Christoph Wurst [Mon, 27 Dec 2021 11:27:50 +0000 (12:27 +0100)]
Fix rendering app authors with homepage or email
When the first author of an app doesn't have homepage/email attributes
set in info.xml then any further author was rendered as `[object
Object]` due to the complex XML node seralized to a JavaScript string.
The logic was fixed so that it converts any of the authors to simple
text.
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
Carl Schwan [Mon, 20 Dec 2021 14:20:52 +0000 (15:20 +0100)]
Handle external share with invalid host
remoteIsOwnCloud might throw an exception when the host is localhost.
Handle this case instead of aborting completely. The behavior is the
same as that is done 10 lines under it
Fix persistent tooltip in the "new folder" input of the file picker
When a new folder is tried to be created in the file picker dialog a
tooltip is shown on the input if the folder name exists already.
However, this tooltip was not cleared, so it was still shown even if the
name was fixed, the folder was created and then the "New folder" input
was shown again.
Now the tooltip is cleared as soon as the input changes, as keeping it
shown in that case did not provide any benefit either (and it is
consistent with how the "new folder" input works in the Files app view).
The input is also cleared whenever the menu that shows the input is
opened again, as otherwise the tooltip would be still shown if the menu
was closed and opened again without changing the input (and the menu
could be opened again after changing to another directory where the new
folder name is no longer duplicated).
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
Arthur Schiwon [Tue, 19 Oct 2021 20:00:13 +0000 (22:00 +0200)]
fix potential unwarranted memberships in nested groups from LDAP
- the issue was present only when using PHP based resolving of nested
group members. Normally nested members are common in AD (and Samba4) and
are resolved per LDAP_MATCHING_RULE_IN_CHAIN by default
- resolving nested members is recursive
- when the cache entry was created it happend for intermediate groups, too,
containing members from the parent group
- the check was added to only cache the root group with its members
- a runtime cache stores intermediate ldap read results
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
Côme Chilliet [Mon, 29 Nov 2021 16:02:25 +0000 (17:02 +0100)]
[stable23] Avoid use of iconv to get rid of unicode
Using iconv for translit depends upon server configuration, locale, and
PHP version. Using htmlentities instead to have a consistent behavior
independent of configuration.
MichaIng [Sat, 5 Jun 2021 20:18:21 +0000 (22:18 +0200)]
Enhance and complement OPcache setup checks
The current OPcache recommendations match the PHP defaults, but the values are much higher than required to run Nextcloud, even with a high number of installed apps. On the other hand, when other applications use the same OPcache instance, the recommended values might not be sufficient. Accurate recommendations need to take into account actual OPcache usage.
With this commit, recommendations are shown to raise the config value if more than 90% of max cache size or number of keys is used.
The checks whether the module is loaded and whether the OPcache is properly configured have been merged into a single function. This allowed to reduce the overhead of OPcache configuration checks when the module is not loaded.
A check has been added whether Nextcloud is permitted to use the OPcache API. Without this, inconsistencies during core or app upgrades may cause errors and OPcache usage cannot be determined for the new usage based checks.
OPcache usage based checks are skipped when Nextcloud is not permitted to use the API.
dependabot[bot] [Sat, 18 Dec 2021 04:05:40 +0000 (04:05 +0000)]
Update sabre/dav requirement from 4.2.3 to 4.3.0 in /build/integration
Updates the requirements on [sabre/dav](https://github.com/sabre-io/dav) to permit the latest version.
- [Release notes](https://github.com/sabre-io/dav/releases)
- [Changelog](https://github.com/sabre-io/dav/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sabre-io/dav/compare/4.2.3...4.3.0)
Carl Schwan [Tue, 14 Dec 2021 12:30:14 +0000 (13:30 +0100)]
Fix share owner not being displayed in sharing tab
This only concerns subfolder and files inside a shared folder and is
used as fallback when the OCS api returns a empty result, because it
only works on the shared folder and not the content inside of it.
This unify the tab with the folder list.
This offers a less descriptive share information but making the
OCS api returns all the details even for the subfolder would very
probably be bad for performance (since we would need to fetch the shares
for all the parent folders until we found one or are in the root folder).
Signed-off-by: Carl Schwan <carl@carlschwan.eu> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
Christoph Wurst [Thu, 2 Dec 2021 14:06:05 +0000 (15:06 +0100)]
Carefully filter out non matching time ranges for CalDAV search
When we search for CalDAV objects in the DB we take the first and last
occurence into account. For recurring events that is when they take
place the very first time and the very last time. Searching in a more
specific time range will still match this condition, because the
recurring event starts before the end of the requested range but ends
after the start of the requested range.
Sabre has filters for this. If we apply them on all seach objects of a
search with a time range, then only the recurring events actually taking
place at the time of the requested time range will be returned.
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
Côme Chilliet [Tue, 2 Nov 2021 15:22:37 +0000 (16:22 +0100)]
Support LDAP dns longer than 255 characters
Adds an ldap_full_dn column to store the dn, and only store a sha256
hash in the ldap_dn which is shorter and can be indexed without
trouble.
Migration still needs to be implemented.
dependabot[bot] [Sat, 11 Dec 2021 07:04:10 +0000 (07:04 +0000)]
Update sabre/dav requirement from 4.2.1 to 4.2.3 in /build/integration
Updates the requirements on [sabre/dav](https://github.com/sabre-io/dav) to permit the latest version.
- [Release notes](https://github.com/sabre-io/dav/releases)
- [Changelog](https://github.com/sabre-io/dav/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sabre-io/dav/compare/4.2.1...4.2.3)
dependabot[bot] [Sat, 11 Dec 2021 03:35:25 +0000 (03:35 +0000)]
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)
Vincent Petry [Thu, 9 Dec 2021 13:58:31 +0000 (14:58 +0100)]
Use correct icon for dir-external-root
When an external storage mount is shared with circles, it triggers the
share icon state to be rerendered. The picking of the mime type icon
would use the regular file icon because there is no actual icon for
"dir-external-root" that is shared.
This fixes the logic to use the "folder-external" icon in such
scenarios.
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
Vincent Petry [Thu, 9 Dec 2021 10:28:10 +0000 (11:28 +0100)]
Check resource before closing in encryption wrapper
In case of error there is no guarantee that $source or $target is set or
is a resource when handling an error.
Without this fix, there's a risk that fclose will fail and the actual
exception will not be thrown, making it impossible to find out about the
root cause.
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
Since Nextcloud 22 the "#new-user" rules had no effect, as the DOM
structure changed to show a dialog rather than adding a row on top of
the list when adding new users.
Similarly, the z-index was no longer needed, as there will be no
"new-user" row that could overlap. Moreover, the z-index was set even
higher (100) in another rule still active.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
The hidden input used for form validation was not actually hidden since
Nextcloud 22, as the DOM structure changed to show a dialog rather than
adding a row on top of the list when adding new users, so the CSS rules
no longer matched.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Carl Schwan [Tue, 7 Dec 2021 16:24:11 +0000 (17:24 +0100)]
Stop reloading file list when getting 401 error on root dir
When reaching the root dir, instead of reloading the file list we reload
the page completely. This trigger a redirection to the login page automatically
with the correct ?redirect_url= in thr url.