Commit Graph

37 Commits (4e22e9576ded61dc141f6100e7b3a22faeaed671)

Author SHA1 Message Date
Côme Chilliet 09acd7e308
feat(settings): Add support for delegated settings not appearing in menu
Adds a new type of settings, delegation, which is only used for admin
 delegation but does not appear in admin menu.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-28 14:50:14 +07:00
Ferdinand Thiessen 5981b7eb51
chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +07:00
Andrey Borysenko 7994332338
feat: add support for sensitive Declarative settings values encryption
Signed-off-by: Andrey Borysenko <andrey18106x@gmail.com>
2025-05-28 20:43:04 +07:00
Ferdinand Thiessen 9a7e1bb227
feat(DeclarativeSettings): Allow to implement value getter and setter directly in Form
Instead of implementing the form class, a setter event listener and a getter event listener,
this allows to simply write a basic class that provides `getSchema`, `setValue` and `getValue` functions.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-15 20:33:45 +07:00
Ferdinand Thiessen b5256181a4
fix(settings): Sort all settings - incl declarative settings - by priority
Previously declarative settings were sorted by priority but behind the "native" settings,
this is now fixed, meaning a declarative setting with higher priority than an `ISetting` will
be correctly rendered before that `ISetting` in the settings list.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-28 14:08:26 +07:00
provokateurin 9836e9b164
chore(deps): Update nextcloud/coding-standard to v1.3.1
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-19 14:21:20 +07:00
Daniel Kesselberg af6de04e9e
style: update codestyle for coding-standard 1.2.3
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +07:00
Andy Scherzinger dae7c159f7
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +07:00
Andrey Borysenko 865fd3ba08
fix: add missing copyrights and strict types
Signed-off-by: Andrey Borysenko <andrey18106x@gmail.com>
2024-03-12 18:14:40 +07:00
jld3103 4ac2375ca2
feat: Add declarative settings
Signed-off-by: jld3103 <jld3103yt@gmail.com>
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
Signed-off-by: Andrey Borysenko <andrey18106x@gmail.com>
2024-03-12 13:56:54 +07:00
Joas Schilling f14949218c
fix(settings): Deprecate old things for real
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-02-14 20:50:07 +07:00
jld3103 ae360080f5
chore(settings): Cleanup IManager and Manager type annotations
Signed-off-by: jld3103 <jld3103yt@gmail.com>
2023-11-23 08:29:37 +07:00
Côme Chilliet f5c361cf44
composer run cs:fix
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-01-20 11:45:08 +07:00
Carl Schwan 046d5451b1 Improve accessibility of the title of the settings
Before every setting page had the same title and this is causing issues
for screenreaders since they can't differenciate the title of page. Now
a new variable is available for apps to declare the page subtitle.

This new variable is implemented for the settings app and while at it I
added a bit more type hinting to the stuff I touched :)

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-05-16 22:47:37 +07:00
Carl Schwan 6958d8005a
Add admin privilege delegation for admin settings
This makes it possible for selected groups to access some settings
pages.

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-09-29 21:43:31 +07:00
John Molakvoæ (skjnldsv) 215aef3cbd
Update php licenses
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +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 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
Morris Jobke b8ed997238
Remove ISection in favor of IIconSection
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-28 23:05:00 +07:00
Christoph Wurst d9015a8c94
Format code to a single space around binary operators
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-05 20:25:24 +07:00
Christoph Wurst 28f8eb5dba
Add visibility to all constants
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:54:27 +07:00
Christoph Wurst caff1023ea
Format control structures, classes, methods and function
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.

This also removes and empty lines from method/function bodies at the
beginning and end.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +07:00
Christoph Wurst 5bf3d1bb38
Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +07:00
Christoph Wurst 22ae682823
Make it possible to show admin settings for sub admins
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-05-23 20:31:40 +07:00
Joas Schilling d971b104ed
Do not cache the settings/sections in the database anymore
This caused more troubles then it had benefits, especially
when an app got disabled or was removed without being disabled.

Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-01-29 15:47:37 +07:00
Morris Jobke 0eebff152a
Update license headers
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +07:00
Arthur Schiwon da53162656
We're on 13 now…
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-06-26 11:03:41 +07:00
Arthur Schiwon 7f48b6f14f
Adopt DB and Manager to personal settings structure
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-06-23 12:36:38 +07:00
Arthur Schiwon b68fdb473d
Extend interfaces
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-06-23 12:36:37 +07:00
Joas Schilling 8c8354399a
Allow apps to specify an icon with the sections via the API
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-01-19 10:42:21 +07:00
Arthur Schiwon 208e551216
check registered sections and settings after an app got updated to garbage collect orphaned classes 2016-08-16 00:56:17 +07:00
Arthur Schiwon 9edca39b49
attempt to remove section and settings entries when an app got disabled 2016-08-16 00:56:17 +07:00
Lukas Reschke 225eb27bca
Add since tags to class 2016-08-11 19:33:37 +07:00
Lukas Reschke 8f12f5df15
Add missing since annotations 2016-08-11 19:28:24 +07:00
Arthur Schiwon 14ddf9d923
rename IAdmin to ISettings, the interface is not bound to a specific settings scope 2016-08-11 14:48:21 +07:00
Arthur Schiwon 1eb8b951c2
more admin page splitup improvements
* bump version to ensure tables are created
* make updatenotification app use settings api
* change IAdmin::render() to getForm() and change return type from Template to TemplateResponse
* adjust User_LDAP accordingly, as well as built-in forms
* add IDateTimeFormatter to AppFramework/DependencyInjection/DIContainer.php. This is important so that \OC::$server->query() is able to resolve the
constructor parameters. We should ensure that all OCP/* stuff that is available from \OC::$server is available here. Kudos to @LukasReschke
* make sure apps that have settings info in their info.xml are loaded before triggering adding the settings setup method
2016-08-10 15:21:25 +07:00
Arthur Schiwon ceeb44bd04
Initial work on Apps page split:
* interfaces for the Admin settings (IAdmin) and section (ISection)
* SettingsManager service
* example setup with LDAP app
2016-08-09 18:05:09 +07:00