Commit Graph

38 Commits

Author SHA1 Message Date
Côme Chilliet 1ab09ec753 chore: Apply new coding standard to all files
The diff can be checked using: git diff --ignore-all-space --ignore-blank-lines
To see only the changes not related to blank lines.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-01 13:46:39 +02:00
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 +02: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 +02: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 +03: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 +02: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 +02: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 +02: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 +02:00
Andy Scherzinger dae7c159f7 chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +02: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 +02: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 +02: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 +01:00
jld3103 ae360080f5 chore(settings): Cleanup IManager and Manager type annotations
Signed-off-by: jld3103 <jld3103yt@gmail.com>
2023-11-23 08:29:37 +01: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 +01: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 +02: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 +02:00
John Molakvoæ (skjnldsv) 215aef3cbd Update php licenses
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +02: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 +01: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 +01:00
Morris Jobke b8ed997238 Remove ISection in favor of IIconSection
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-28 23:05:00 +01: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 +02:00
Christoph Wurst 28f8eb5dba Add visibility to all constants
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:54:27 +02: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 +02:00
Christoph Wurst 5bf3d1bb38 Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +01: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 +02: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 +01:00
Morris Jobke 0eebff152a Update license headers
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +01:00
Arthur Schiwon da53162656 We're on 13 now…
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-06-26 11:03:41 +02: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 +02:00
Arthur Schiwon b68fdb473d Extend interfaces
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-06-23 12:36:37 +02: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 +01: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 +02:00
Arthur Schiwon 9edca39b49 attempt to remove section and settings entries when an app got disabled 2016-08-16 00:56:17 +02:00
Lukas Reschke 225eb27bca Add since tags to class 2016-08-11 19:33:37 +02:00
Lukas Reschke 8f12f5df15 Add missing since annotations 2016-08-11 19:28:24 +02:00
Arthur Schiwon 14ddf9d923 rename IAdmin to ISettings, the interface is not bound to a specific settings scope 2016-08-11 14:48:21 +02: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 +02: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 +02:00