Page MenuHomePhorge

D5310.1775403390.diff
No OneTemporary

Authored By
Unknown
Size
9 KB
Referenced Files
None
Subscribers
None

D5310.1775403390.diff

diff --git a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/calendar.inc.php b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/calendar.inc.php
--- a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/calendar.inc.php
+++ b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/calendar.inc.php
@@ -1,12 +1,4 @@
<?php
- if (getenv('KOLABOBJECTS_COMPAT_MODE') == "true") {
- $config['calendar_driver'] = "kolab";
- } else {
- $config['calendar_driver'] = "caldav";
- # This is for internal access
- $config['calendar_caldav_server'] = getenv('CALENDAR_CALDAV_SERVER') ?: "https://" . ($_SERVER["HTTP_HOST"] ?? null) . "/dav";
- }
-
# This is for external access
$config['calendar_caldav_url'] = 'https://%h/dav/calendars/%u/%i';
diff --git a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/config.inc.php b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/config.inc.php
--- a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/config.inc.php
+++ b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/config.inc.php
@@ -82,41 +82,31 @@
$plugins = [
'acl',
'archive',
- 'calendar',
- 'jqueryui',
'kolab',
+ // 'calendar',
+ 'jqueryui',
'kolab_activesync',
- 'kolab_addressbook',
- 'kolab_files',
- 'kolab_tags',
+ // 'kolab_addressbook',
+ // 'kolab_files',
+ // 'kolab_tags',
'managesieve',
'newmail_notifier',
'odfviewer',
'redundant_attachments',
- 'tasklist',
+ // 'tasklist',
'enigma',
+ // contextmenu must be after kolab_addressbook (#444)
+ 'contextmenu',
];
- if (getenv('KOLABOBJECTS_COMPAT_MODE') == "true") {
- $plugins[] = 'kolab_config';
- $plugins[] = 'kolab_folders';
- $plugins[] = 'kolab_notes';
-
- // These require ldap
- // $plugins[] = 'kolab_auth';
- // $plugins[] = 'kolab_delegation';
- }
-
if ($disabledPlugins = getenvlist('DISABLED_PLUGINS')) {
$plugins = array_diff($plugins, $disabledPlugins);
}
+
if ($extraPlugins = getenvlist('EXTRA_PLUGINS')) {
$plugins = array_merge($plugins, $extraPlugins);
}
- // contextmenu must be after kolab_addressbook (#444)
- $plugins[] = 'contextmenu';
-
$config['plugins'] = $plugins;
// Do not show deleted messages, mark deleted messages as read,
diff --git a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab.inc.php b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab.inc.php
--- a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab.inc.php
+++ b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab.inc.php
@@ -15,3 +15,40 @@
// Lifetime of cache entries. Possible units: s, m, h, d, w
$config['kolab_client_cache_ttl'] = '10m';
+
+$config['configuration-overlays']['kolabobjects'] = [
+ 'plugins' => ['kolab_config', 'kolab_folders', 'kolab_notes'],
+ 'calendar_driver' => 'kolab',
+ 'fileapi_backend' => 'kolab',
+ 'kolab_tags_driver' => 'kolab',
+ 'tasklist_driver' => 'kolab'
+];
+
+$config['configuration-overlays']['kolab4'] = [
+ 'calendar_driver' => 'caldav',
+ 'calendar_caldav_server' => getenv('CALENDAR_CALDAV_SERVER') ?: "https://" . ($_SERVER["HTTP_HOST"] ?? null) . "/dav",
+ 'fileapi_backend' => 'kolabfiles',
+ 'fileapi_kolabfiles_baseuri' => getenv('FILEAPI_KOLABFILES_BASEURI'),
+ 'activesync_storage' => 'kolab4',
+ 'activesync_dav_server' => getenv('CALENDAR_CALDAV_SERVER') ?: "https://" . ($_SERVER["HTTP_HOST"] ?? null) . "/dav",
+ 'kolab_tags_driver' => 'annotate',
+ 'tasklist_driver' => 'caldav',
+ 'tasklist_caldav_server' => getenv('TASKLIST_CALDAV_SERVER') ?: "https://" . ($_SERVER["HTTP_HOST"] ?? null) . "/dav",
+];
+
+$config['configuration-overlays']['activesync'] = [
+ 'plugins' => ['kolab_activesync']
+];
+
+$config['configuration-overlays']['2fa'] = [
+ 'plugins' => ['kolab_2fa']
+];
+
+$config['configuration-overlays']['groupware'] = [
+ 'plugins' => ['calendar', 'kolab_files', 'kolab_addressbook', 'kolab_tags', 'kolab_notes', 'tasklist']
+];
+
+if ($disabledPlugins = getenvlist('DISABLED_PLUGINS')) {
+ $config['configuration-overlays']['kolabobjects']['plugins'] = array_diff($config['configuration-overlays']['groupware']['plugins'], $disabledPlugins);
+ $config['configuration-overlays']['groupware']['plugins'] = array_diff($config['configuration-overlays']['groupware']['plugins'], $disabledPlugins);
+}
diff --git a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab_syncroton.inc.php b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab_syncroton.inc.php
--- a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab_syncroton.inc.php
+++ b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab_syncroton.inc.php
@@ -5,12 +5,6 @@
// Enables ActiveSync protocol debuging
$config['activesync_debug'] = getenv('ACTIVESYNC_DEBUG');
-if (getenv('KOLABOBJECTS_COMPAT_MODE') != "true") {
- // Configure for dav backend
- $config['activesync_storage'] = 'kolab4';
- $config['activesync_dav_server'] = getenv('CALENDAR_CALDAV_SERVER') ?: "https://" . ($_SERVER["HTTP_HOST"] ?? null) . "/dav";
-}
-
// If specified all ActiveSync-related logs will be saved to this file
// Note: This doesn't change Roundcube Framework log locations
$config['activesync_log_file'] = null;
diff --git a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab_tags.inc.php b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab_tags.inc.php
--- a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab_tags.inc.php
+++ b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/kolab_tags.inc.php
@@ -1,8 +1,2 @@
<?php
-// Storage backend type (database, kolab, annotate)
-if (getenv('KOLABOBJECTS_COMPAT_MODE') == "true") {
- $config['kolab_tags_driver'] = 'kolab';
-} else {
- $config['kolab_tags_driver'] = 'annotate';
-}
diff --git a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/libkolab.inc.php b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/libkolab.inc.php
--- a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/libkolab.inc.php
+++ b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/libkolab.inc.php
@@ -8,10 +8,6 @@
$config['kolab_cache'] = true;
- if (getenv('KOLABOBJECTS_COMPAT_MODE') != "true") {
- $config['kolab_dav_sharing'] = "sharing";
- }
-
$config['kolab_ssl_verify_host'] = false;
$config['kolab_ssl_verify_peer'] = false;
diff --git a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/tasklist.inc.php b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/tasklist.inc.php
--- a/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/tasklist.inc.php
+++ b/docker/roundcube/rootfs/opt/app-root/src/roundcubemail-config-templates/tasklist.inc.php
@@ -1,12 +1,5 @@
<?php
-if (getenv('KOLABOBJECTS_COMPAT_MODE') == "true") {
- $config['tasklist_driver'] = 'kolab';
-} else {
- $config['tasklist_driver'] = 'caldav';
- $config['tasklist_caldav_server'] = getenv('TASKLIST_CALDAV_SERVER') ?: "https://" . ($_SERVER["HTTP_HOST"] ?? null) . "/dav";
-}
-
// default sorting order of tasks listing (auto, datetime, startdatetime, flagged, complete, changed)
$config['tasklist_sort_col'] = '';
diff --git a/src/app/Http/Controllers/API/V4/ConfigController.php b/src/app/Http/Controllers/API/V4/ConfigController.php
--- a/src/app/Http/Controllers/API/V4/ConfigController.php
+++ b/src/app/Http/Controllers/API/V4/ConfigController.php
@@ -22,36 +22,27 @@
}
$config = [
- 'plugins' => [],
+ 'kolab-configuration-overlays' => [],
];
$skus = $user->skuTitles();
+ // TODO conditionally switch to kolabobjects
+ $config['kolab-configuration-overlays'][] = 'kolab4';
+
if (in_array('activesync', $skus)) {
- $config['plugins'][] = 'kolab_activesync';
+ $config['kolab-configuration-overlays'][] = 'activesync';
}
if (in_array('2fa', $skus)) {
- $config['plugins'][] = 'kolab_2fa';
+ $config['kolab-configuration-overlays'][] = '2fa';
}
if (in_array('groupware', $skus)) {
- $config['plugins'][] = 'calendar';
- $config['plugins'][] = 'kolab_files';
- $config['plugins'][] = 'kolab_addressbook';
- $config['plugins'][] = 'kolab_tags';
- // $config['plugins'][] = 'kolab_notes';
- $config['plugins'][] = 'tasklist';
- } else {
- // disable groupware plugins in case they are enabled by default
- $config['calendar_disabled'] = true;
- $config['kolab_files_disabled'] = true;
- // $config['kolab_addressbook_disabled'] = true;
- // $config['kolab_notes_disabled'] = true;
- $config['kolab_tags_disabled'] = true;
- $config['tasklist_disabled'] = true;
+ $config['kolab-configuration-overlays'][] = 'groupware';
}
+
// TODO: Per-domain configuration, e.g. skin/logo
// $config['skin'] = 'apostrophy';
// $config['skin_logo'] = 'data:image/svg+xml;base64,'

File Metadata

Mime Type
text/plain
Expires
Sun, Apr 5, 3:36 PM (16 h, 53 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18832892
Default Alt Text
D5310.1775403390.diff (9 KB)

Event Timeline