Commit Graph

180 Commits (stable21)

Author SHA1 Message Date
Joas Schilling efbbdb79df Limit the length of app password names
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-05-13 18:34:18 +07:00
Arthur Schiwon be7feb7e3b Setup warning for invalid LDAP user or group UUIDs.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-02-10 21:40:24 +07:00
Daniel Calviño Sánchez 46290e9796 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-22 09:55:22 +07:00
Bjoern Schiessle 1237d64bdb 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:33 +07:00
Carl Schwan 5620eed6ef 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:18:42 +07:00
Robin Appelman 33deabcf01 dont show trusted proxy warning when the proxy and remote are both localhost
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-08-11 21:12:42 +07:00
Carl Schwan b4a85c2785 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:06 +07:00
Marco Ambrosini bb898c9ed5 Allow to disable group change notification
Signed-off-by: Marco Ambrosini <marcoambrosini@pm.me>
2021-07-29 09:50:28 +07:00
Daniel Calviño Sánchez 44c870a470 Fix deleting properties of user settings when not given explicitly
The controller can receive an optional subset of the properties of the
user settings; values not given are set to "null" by default. However,
those null values overwrote the previously existing values, so in
practice any value not given was deleted from the user settings. Now
only non null values overwrite the previous values.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-07-02 14:27:23 +07:00
Daniel Calviño Sánchez ae7eca8a36 Fix TypeError when "email" is not given in the controller request
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-07-02 14:27:22 +07:00
Daniel Calviño Sánchez 6865d51869 Respect additional user settings not covered by the controller
"AccountManager::updateUser()" wipes previous user data with whichever
user data is given (except for some adjustments, like resetting the
verified status when needed). As the controller overrode the properties
those properties would lose some of their attributes even if they are
not affected by the changes made by the controller. Now the controller
only modifies the attributes set ("value" and "scope") to prevent that.

Note that with this change the controller no longer removes the
"verified" status, but this is not a problem because, as mentioned,
"AccountManager::updateUser()" resets them when needed (for example,
when the value of the website property changes).

This change is a previous step to fix overwritting properties with null
values, and it will prevent the controller from making unexpected
changes if more attributes are added in the future.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-07-02 14:27:22 +07:00
Daniel Calviño Sánchez 4fbb9b212d Use constants from interface rather than class
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-07-02 14:27:21 +07:00
Roeland Jago Douma e3090136b8 Harden apptoken check
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-05-18 12:39:43 +07:00
Joas Schilling 2c1218826d Validate the website field input to be a valid URL
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-26 11:58:56 +07:00
Claas Augner c0bd430246 Mention MariaDB in MySQL support warning 2021-04-21 14:45:41 +07:00
Vincent Petry 5c854ba132 Make extra user profile fields always editable
The fields for phone number, address, website and twitter are now
editable regardless whether federated sharing and the lookup server
are enabled or not.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-29 07:03:32 +07:00
Vincent Petry 5d76574a81 Map old account scope properties to new names
Use new scope values in settings page.
Adjust all consumers to use the new constants.
Map old scope values to new ones in account property getter.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-29 07:03:31 +07:00
Joas Schilling 5fa52d492a
Rename some parameters and methods to make the API more clear
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-11 08:42:09 +07:00
Joas Schilling 490bfa7330
Also clear the knownUser when changing via the settings endpoint
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-11 08:40:59 +07:00
Joas Schilling 77f6d768bc
Add a setting to restrict returning a full match unless in phonebook or same group
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-11 08:40:26 +07:00
Joas Schilling 52d43bf3cc
Add a config setting to restrict autocompletion to phonebook matches
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-11 08:39:55 +07:00
Christoph Wurst 378f116a63
Do not show 2FA settings if the user has no providers available
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-22 13:55:22 +07:00
Christoph Wurst c1d4f8161b
Migrate internal classes to the OCP db col types
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-12 14:09:13 +07:00
Vincent Petry eeac11a687
Fix casing of MySQLPlatform class name
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-01-12 09:39:59 +07:00
Roeland Jago Douma 6c8f2dc7bc
Merge pull request #25016 from nextcloud/enh/noid/add-check-for-unsupported-db
Add setup check to verify that the used DB version is still supported…
2021-01-11 14:21:42 +07:00
Morris Jobke 24d436cb60
Remove unneeded casts that were found by Psalm
In preparation of the update of Psalm from 4.2.1 to 4.3.1+ (see https://github.com/nextcloud/server/pull/24521)

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-11 13:14:41 +07:00
Morris Jobke bffa61fc32
Add setup check to verify that the used DB version is still supported in the next major release
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-08 13:38:32 +07:00
Christoph Wurst 8b64e92b92
Bump doctrine/dbal from 2.12.0 to 3.0.0
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-08 11:45:19 +07:00
Julius Härtl 068e3b2c1e
Set the user language when adding the footer
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-01-07 15:31:55 +07:00
Julius Härtl abfb72378f
Hide client link in welcome mail if an empty customclient_desktop config is set
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-01-07 10:45:54 +07:00
Christoph Wurst 90d0732828
Fix updating user settings
The requests dispatched from the personal settings page don't always
send all the possible params but just a subset. Hence requests currently
fail on master e.g. when you update your email. This makes the arguments
optional again.

Regression of da9462b482

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-05 12:59:50 +07:00
Christoph Wurst 9ce3ea3368
Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-30 14:07:05 +07:00
Roeland Jago Douma adc4f1a811
Merge pull request #22916 from J0WI/unifiy-links-to-php.net
Unify links to php.net
2020-12-22 09:53:31 +07:00
Christoph Wurst f37e150d1c
Merge pull request #24702 from nextcloud/enhancement/well-known-handler-api
Add well known handlers API
2020-12-18 13:34:04 +07:00
Christoph Wurst d89a75be0b
Update all license headers for Nextcloud 21
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 18:48:22 +07:00
Christoph Wurst 6995223b1e
Add well known handlers API
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 13:13:05 +07:00
Joas Schilling 96253c7c1b
Add missing parent::__construct() calls to Jobs
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-14 16:35:12 +07:00
Julius Härtl a0444bc69c
Merge pull request #24247 from nextcloud/bugfix/noid/ocm-providerId-string 2020-12-09 17:25:59 +07:00
Julius Härtl 8f6c2ec357
Move columns to bigint
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-08 16:05:53 +07:00
Joas Schilling f648635758
Make the throwing optional, so background tasks don't break
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:38 +07:00
Joas Schilling 46b073d7ce
Add a config for default region of phone numbers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:38 +07:00
Joas Schilling 9e04e6f99a
Also translate the phone number when coming in via the accounts manager API directly
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:38 +07:00
Joas Schilling efe79f2937
Validate and standardize the phone number on saving
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:37 +07:00
Joas Schilling c2913f18d2
Also return the phone number and twitter handle on the API
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:37 +07:00
Joas Schilling da9462b482
Make code strict
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:37 +07:00
Morris Jobke fe79a1ad3e
Harden setup check for TLS version if host is not reachable
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-12-02 13:17:05 +07:00
Roeland Jago Douma 6166e1a157
Use proper OCP\BackgroundJobs\Job
And typehunt the IJobList

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-25 15:03:06 +07:00
Vincent Petry 2143f2bb82
Set up FS before querying storage info in settings
The personal info section of the personal settings is querying the
storage quota information. For this it requires the FS to be setup which
is not always guaranteed.

This fixes an issue where refreshing the settings page would cause it to
fail after Redis caches are full. It is likely that when Redis cache is
populated, some code path is initializing the FS, so it works so far.
But when the cache is populated, that code path is skipped so the FS is
not guaranteed to be setup...

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2020-11-13 17:06:37 +07:00
Joas Schilling d5df033ede
Create primary keys on all tables and add a command to create the afterwards
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:36:27 +07:00
Morris Jobke a223f603f9
Simplify the check if admin can change password based on encryption status
Found by Psalm:
```
/home/runner/work/server/server/apps/settings/lib/Controller/UsersController.php:324:8:error - RedundantCondition: Type true for $isEncryptionModuleLoaded is never falsy
```

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-05 22:20:34 +07:00