Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode



When using oCIS, the requirement to store settings arises. This extension provides functionality for other extensions to register new settings within oCIS. It is responsible for storing the respective settings values as well.

For ease of use, this extension provides an ocis-web extension which allows users to change their settings values. Please refer to the ocis-web extension docs for running ocis-web extensions.

graph TD
    subgraph ow[ocis-web]
    ows ---|"listSettingsBundles(),
saveSettingsValue(value)"| os[ocis-settings] owc ---|"listSettingsValues()"| sdk[oC SDK] sdk --- sdks{ocis-settings
available?} sdks ---|"yes"| os sdks ---|"no"| defaults[Use set of
default values] oa[oCIS extensions
e.g. ocis-accounts] ---|"saveSettingsBundle(bundle)"| os

The diagram shows how the settings service integrates into oCIS:

Settings management:

  • oCIS extensions can register settings bundles with the ocis-settings service.
  • The settings frontend can be plugged into ocis-web, showing forms for changing settings values as a user. The forms are generated from the registered settings bundles.

Settings usage:

  • Extensions can query ocis-settings for settings values of a user.
  • The ownCloud SDK, used as a data abstraction layer for ocis-web, will query ocis-settings for settings values of a user, if it’s available. The SDK uses sensible defaults when ocis-settings is not part of the setup.

For compatibility with ownCloud 10, a migration of ownCloud 10 settings into the storage of ocis-settings will be available.