|
@@ -6,29 +6,11 @@
|
6
|
6
|
*
|
7
|
7
|
* Created : 01.10.2007
|
8
|
8
|
*
|
9
|
|
-* Copyright 2007 - 2013 Zarafa Deutschland GmbH
|
|
9
|
+* Copyright 2007 - 2016 Zarafa Deutschland GmbH
|
10
|
10
|
*
|
11
|
11
|
* This program is free software: you can redistribute it and/or modify
|
12
|
12
|
* it under the terms of the GNU Affero General Public License, version 3,
|
13
|
|
-* as published by the Free Software Foundation with the following additional
|
14
|
|
-* term according to sec. 7:
|
15
|
|
-*
|
16
|
|
-* According to sec. 7 of the GNU Affero General Public License, version 3,
|
17
|
|
-* the terms of the AGPL are supplemented with the following terms:
|
18
|
|
-*
|
19
|
|
-* "Zarafa" is a registered trademark of Zarafa B.V.
|
20
|
|
-* "Z-Push" is a registered trademark of Zarafa Deutschland GmbH
|
21
|
|
-* The licensing of the Program under the AGPL does not imply a trademark license.
|
22
|
|
-* Therefore any rights, title and interest in our trademarks remain entirely with us.
|
23
|
|
-*
|
24
|
|
-* However, if you propagate an unmodified version of the Program you are
|
25
|
|
-* allowed to use the term "Z-Push" to indicate that you distribute the Program.
|
26
|
|
-* Furthermore you may use our trademarks where it is necessary to indicate
|
27
|
|
-* the intended purpose of a product or service provided you use it in accordance
|
28
|
|
-* with honest practices in industrial or commercial matters.
|
29
|
|
-* If you want to propagate modified versions of the Program under the name "Z-Push",
|
30
|
|
-* you may only do so if you have a written permission by Zarafa Deutschland GmbH
|
31
|
|
-* (to acquire a permission please contact Zarafa at trademark@zarafa.com).
|
|
13
|
+* as published by the Free Software Foundation.
|
32
|
14
|
*
|
33
|
15
|
* This program is distributed in the hope that it will be useful,
|
34
|
16
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
@@ -53,21 +35,56 @@
|
53
|
35
|
// Try to set unlimited timeout
|
54
|
36
|
define('SCRIPT_TIMEOUT', 0);
|
55
|
37
|
|
56
|
|
- // When accessing through a proxy, the "X-Forwarded-For" header contains the original remote IP
|
57
|
|
- define('USE_X_FORWARDED_FOR_HEADER', false);
|
|
38
|
+ // Use a custom header to determinate the remote IP of a client.
|
|
39
|
+ // By default, the server provided REMOTE_ADDR is used. If the header here set
|
|
40
|
+ // is available, the provided value will be used, else REMOTE_ADDR is maintained.
|
|
41
|
+ // set to false to disable this behaviour.
|
|
42
|
+ // common values: 'HTTP_X_FORWARDED_FOR', 'HTTP_X_REAL_IP' (casing is ignored)
|
|
43
|
+ define('USE_CUSTOM_REMOTE_IP_HEADER', false);
|
58
|
44
|
|
59
|
45
|
// When using client certificates, we can check if the login sent matches the owner of the certificate.
|
60
|
46
|
// This setting specifies the owner parameter in the certificate to look at.
|
61
|
47
|
define("CERTIFICATE_OWNER_PARAMETER", "SSL_CLIENT_S_DN_CN");
|
62
|
48
|
|
|
49
|
+ /*
|
|
50
|
+ * Whether to use the complete email address as a login name
|
|
51
|
+ * (e.g. user@company.com) or the username only (user).
|
|
52
|
+ * This is required for Z-Push to work properly after autodiscover.
|
|
53
|
+ * Possible values:
|
|
54
|
+ * false - use the username only.
|
|
55
|
+ * true - string the mobile sends as username, e.g. full email address (default).
|
|
56
|
+ */
|
|
57
|
+ define('USE_FULLEMAIL_FOR_LOGIN', true);
|
|
58
|
+
|
63
|
59
|
/**********************************************************************************
|
64
|
|
- * Default FileStateMachine settings
|
|
60
|
+ * StateMachine setting
|
|
61
|
+ *
|
|
62
|
+ * These StateMachines can be used:
|
|
63
|
+ * FILE - FileStateMachine (default). Needs STATE_DIR set as well.
|
|
64
|
+ * SQL - SqlStateMachine has own configuration file. STATE_DIR is ignored.
|
|
65
|
+ * State migration script is available, more informations: https://wiki.z-hub.io/x/xIAa
|
65
|
66
|
*/
|
|
67
|
+ define('STATE_MACHINE', 'FILE');
|
66
|
68
|
define('STATE_DIR', '/data/zpush-state/');
|
67
|
69
|
|
|
70
|
+/**********************************************************************************
|
|
71
|
+ * IPC - InterProcessCommunication
|
|
72
|
+ *
|
|
73
|
+ * Is either provided by using shared memory on a single host or
|
|
74
|
+ * using the memcache provider for multi-host environments.
|
|
75
|
+ * When another implementation should be used, the class can be set here explicitly.
|
|
76
|
+ * If empty Z-Push will try to use available providers.
|
|
77
|
+ */
|
|
78
|
+ define('IPC_PROVIDER', '');
|
68
|
79
|
|
69
|
80
|
/**********************************************************************************
|
70
|
81
|
* Logging settings
|
|
82
|
+ *
|
|
83
|
+ * The LOGBACKEND specifies where the logs are sent to.
|
|
84
|
+ * Either to file ("filelog") or to a "syslog" server or a custom log class in core/log/logclass.
|
|
85
|
+ * filelog and syslog have several options that can be set below.
|
|
86
|
+ * For more information about the syslog configuration, see https://wiki.z-hub.io/x/HIAT
|
|
87
|
+
|
71
|
88
|
* Possible LOGLEVEL and LOGUSERLEVEL values are:
|
72
|
89
|
* LOGLEVEL_OFF - no logging
|
73
|
90
|
* LOGLEVEL_FATAL - log only critical errors
|
|
@@ -82,14 +99,13 @@
|
82
|
99
|
* The verbosity increases from top to bottom. More verbose levels include less verbose
|
83
|
100
|
* ones, e.g. setting to LOGLEVEL_DEBUG will also output LOGLEVEL_FATAL, LOGLEVEL_ERROR,
|
84
|
101
|
* LOGLEVEL_WARN and LOGLEVEL_INFO level entries.
|
|
102
|
+ *
|
|
103
|
+ * LOGAUTHFAIL is logged to the LOGBACKEND.
|
85
|
104
|
*/
|
86
|
|
- define('LOGFILEDIR', '/var/log/z-push/');
|
87
|
|
- define('LOGFILE', LOGFILEDIR . 'z-push.log');
|
88
|
|
- define('LOGERRORFILE', LOGFILEDIR . 'z-push-error.log');
|
|
105
|
+ define('LOGBACKEND', 'filelog');
|
89
|
106
|
define('LOGLEVEL', LOGLEVEL_INFO);
|
90
|
107
|
define('LOGAUTHFAIL', false);
|
91
|
108
|
|
92
|
|
-
|
93
|
109
|
// To save e.g. WBXML data only for selected users, add the usernames to the array
|
94
|
110
|
// The data will be saved into a dedicated file per user in the LOGFILEDIR
|
95
|
111
|
// Users have to be encapusulated in quotes, several users are comma separated, like:
|
|
@@ -97,6 +113,21 @@
|
97
|
113
|
define('LOGUSERLEVEL', LOGLEVEL_DEVICEID);
|
98
|
114
|
$specialLogUsers = array();
|
99
|
115
|
|
|
116
|
+ // Filelog settings
|
|
117
|
+ define('LOGFILEDIR', '/var/log/z-push/');
|
|
118
|
+ define('LOGFILE', LOGFILEDIR . 'z-push.log');
|
|
119
|
+ define('LOGERRORFILE', LOGFILEDIR . 'z-push-error.log');
|
|
120
|
+
|
|
121
|
+ // Syslog settings
|
|
122
|
+ // false will log to local syslog, otherwise put the remote syslog IP here
|
|
123
|
+ define('LOG_SYSLOG_HOST', false);
|
|
124
|
+ // Syslog port
|
|
125
|
+ define('LOG_SYSLOG_PORT', 514);
|
|
126
|
+ // Program showed in the syslog. Useful if you have more than one instance login to the same syslog
|
|
127
|
+ define('LOG_SYSLOG_PROGRAM', 'z-push');
|
|
128
|
+ // Syslog facility - use LOG_USER when running on Windows
|
|
129
|
+ define('LOG_SYSLOG_FACILITY', LOG_LOCAL0);
|
|
130
|
+
|
100
|
131
|
// Location of the trusted CA, e.g. '/etc/ssl/certs/EmailCA.pem'
|
101
|
132
|
// Uncomment and modify the following line if the validation of the certificates fails.
|
102
|
133
|
// define('CAINFO', '/etc/ssl/certs/EmailCA.pem');
|
|
@@ -113,6 +144,10 @@
|
113
|
144
|
// true - allow older devices, but enforce policies on devices which support it
|
114
|
145
|
define('LOOSE_PROVISIONING', false);
|
115
|
146
|
|
|
147
|
+ // The file containing the policies' settings.
|
|
148
|
+ // Set a full path or relative to the z-push main directory
|
|
149
|
+ define('PROVISIONING_POLICYFILE', 'policies.ini');
|
|
150
|
+
|
116
|
151
|
// Default conflict preference
|
117
|
152
|
// Some devices allow to set if the server or PIM (mobile)
|
118
|
153
|
// should win in case of a synchronization conflict
|
|
@@ -135,11 +170,6 @@
|
135
|
170
|
// a higher value if you have a high load on the server.
|
136
|
171
|
define('PING_INTERVAL', 30);
|
137
|
172
|
|
138
|
|
- // Interval in seconds to force a re-check of potentially missed notifications when
|
139
|
|
- // using a changes sink. Default are 300 seconds (every 5 min).
|
140
|
|
- // This can also be disabled by setting it to false
|
141
|
|
- define('SINK_FORCERECHECK', 300);
|
142
|
|
-
|
143
|
173
|
// Set the fileas (save as) order for contacts in the webaccess/webapp/outlook.
|
144
|
174
|
// It will only affect new/modified contacts on the mobile which then are synced to the server.
|
145
|
175
|
// Possible values are:
|
|
@@ -158,12 +188,14 @@
|
158
|
188
|
// SYNC_FILEAS_LASTFIRST will be used
|
159
|
189
|
define('FILEAS_ORDER', SYNC_FILEAS_LASTFIRST);
|
160
|
190
|
|
161
|
|
- // Amount of items to be synchronized per request
|
|
191
|
+ // Maximum amount of items to be synchronized per request.
|
162
|
192
|
// Normally this value is requested by the mobile. Common values are 5, 25, 50 or 100.
|
163
|
193
|
// Exporting too much items can cause mobile timeout on busy systems.
|
164
|
|
- // Z-Push will use the lowest value, either set here or by the mobile.
|
165
|
|
- // default: 100 - value used if mobile does not limit amount of items
|
166
|
|
- define('SYNC_MAX_ITEMS', 100);
|
|
194
|
+ // Z-Push will use the lowest provided value, either set here or by the mobile.
|
|
195
|
+ // MS Outlook 2013+ request up to 512 items to accelerate the sync process.
|
|
196
|
+ // If you detect high load (also on subsystems) you could try a lower setting.
|
|
197
|
+ // max: 512 - value used if mobile does not limit amount of items
|
|
198
|
+ define('SYNC_MAX_ITEMS', 512);
|
167
|
199
|
|
168
|
200
|
// The devices usually send a list of supported properties for calendar and contact
|
169
|
201
|
// items. If a device does not includes such a supported property in Sync request,
|
|
@@ -172,7 +204,7 @@
|
172
|
204
|
// to tell if a property was deleted or it was not set at all if it does not appear in Sync.
|
173
|
205
|
// This parameter defines Z-Push behaviour during Sync if a device does not issue a list with
|
174
|
206
|
// supported properties.
|
175
|
|
- // See also https://jira.zarafa.com/browse/ZP-302.
|
|
207
|
+ // See also https://jira.z-hub.io/browse/ZP-302.
|
176
|
208
|
// Possible values:
|
177
|
209
|
// false - do not unset properties which are not sent during Sync (default)
|
178
|
210
|
// true - unset properties which are not sent during Sync
|
|
@@ -182,58 +214,63 @@
|
182
|
214
|
// in the semantic sanity checks and contacts with larger photos are not synchronized.
|
183
|
215
|
// This limitation is not being followed by the ActiveSync clients which set much bigger
|
184
|
216
|
// contact photos. You can override the default value of the max photo size.
|
185
|
|
- // default: 49152 - 48 KB default max photo size in bytes
|
186
|
|
- define('SYNC_CONTACTS_MAXPICTURESIZE', 49152);
|
|
217
|
+ // default: 5242880 - 5 MB default max photo size in bytes
|
|
218
|
+ define('SYNC_CONTACTS_MAXPICTURESIZE', 5242880);
|
|
219
|
+
|
|
220
|
+ // Over the WebserviceUsers command it is possible to retrieve a list of all
|
|
221
|
+ // known devices and users on this Z-Push system. The authenticated user needs to have
|
|
222
|
+ // admin rights and a public folder must exist.
|
|
223
|
+ // In multicompany environments this enable an admin user of any company to retrieve
|
|
224
|
+ // this full list, so this feature is disabled by default. Enable with care.
|
|
225
|
+ define('ALLOW_WEBSERVICE_USERS_ACCESS', false);
|
|
226
|
+
|
|
227
|
+ // Users with many folders can use the 'partial foldersync' feature, where the server
|
|
228
|
+ // actively stops processing the folder list if it takes too long. Other requests are
|
|
229
|
+ // then redirected to the FolderSync to synchronize the remaining items.
|
|
230
|
+ // Device compatibility for this procedure is not fully understood.
|
|
231
|
+ // NOTE: THIS IS AN EXPERIMENTAL FEATURE WHICH COULD PREVENT YOUR MOBILES FROM SYNCHRONIZING.
|
|
232
|
+ define('USE_PARTIAL_FOLDERSYNC', false);
|
|
233
|
+
|
|
234
|
+ // The minimum accepted time in second that a ping command should last.
|
|
235
|
+ // It is strongly advised to keep this config to false. Some device
|
|
236
|
+ // might not be able to send a higher value than the one specificied here and thus
|
|
237
|
+ // unable to start a push connection.
|
|
238
|
+ // If set to false, there will be no lower bound to the ping lifetime.
|
|
239
|
+ // The minimum accepted value is 1 second. The maximum accepted value is 3540 seconds (59 minutes).
|
|
240
|
+ define('PING_LOWER_BOUND_LIFETIME', false);
|
|
241
|
+
|
|
242
|
+ // The maximum accepted time in second that a ping command should last.
|
|
243
|
+ // If set to false, there will be no higher bound to the ping lifetime.
|
|
244
|
+ // The minimum accepted value is 1 second. The maximum accepted value is 3540 seconds (59 minutes).
|
|
245
|
+ define('PING_HIGHER_BOUND_LIFETIME', false);
|
|
246
|
+
|
|
247
|
+ // Maximum response time
|
|
248
|
+ // Mobiles implement different timeouts to their TCP/IP connections. Android devices for example
|
|
249
|
+ // have a hard timeout of 30 seconds. If the server is not able to answer a request within this timeframe,
|
|
250
|
+ // the answer will not be recieved and the device will send a new one overloading the server.
|
|
251
|
+ // There are three categories
|
|
252
|
+ // - Short timeout - server has up within 30 seconds - is automatically applied for not categorized types
|
|
253
|
+ // - Medium timeout - server has up to 90 seconds to respond
|
|
254
|
+ // - Long timeout - server has up to 4 minutes to respond
|
|
255
|
+ // If a timeout is almost reached the server will break and sent the results it has until this
|
|
256
|
+ // point. You can add DeviceType strings to the categories.
|
|
257
|
+ // In general longer timeouts are better, because more data can be streamed at once.
|
|
258
|
+ define('SYNC_TIMEOUT_MEDIUM_DEVICETYPES', "SAMSUNGGTI");
|
|
259
|
+ define('SYNC_TIMEOUT_LONG_DEVICETYPES', "iPod, iPad, iPhone, WP, WindowsOutlook, WindowsMail");
|
|
260
|
+
|
|
261
|
+ // Time in seconds the device should wait whenever the service is unavailable,
|
|
262
|
+ // e.g. when a backend service is unavailable.
|
|
263
|
+ // Z-Push sends a "Retry-After" header in the response with the here defined value.
|
|
264
|
+ // It is up to the device to respect or not this directive so even if this option is set,
|
|
265
|
+ // the device might not wait requested time frame.
|
|
266
|
+ // Number of seconds before retry, to disable set to: false
|
|
267
|
+ define('RETRY_AFTER_DELAY', 300);
|
187
|
268
|
|
188
|
269
|
/**********************************************************************************
|
189
|
270
|
* Backend settings
|
190
|
271
|
*/
|
191
|
272
|
// the backend data provider
|
192
|
|
- define('BACKEND_PROVIDER', 'BackendIMAP');
|
193
|
|
-
|
194
|
|
-
|
195
|
|
- // ************************
|
196
|
|
- // BackendZarafa settings
|
197
|
|
- // ************************
|
198
|
|
- // Defines the server to which we want to connect
|
199
|
|
- define('MAPI_SERVER', 'file:///var/run/zarafa');
|
200
|
|
-
|
201
|
|
-
|
202
|
|
- // ************************
|
203
|
|
- // BackendIMAP settings
|
204
|
|
- // ************************
|
205
|
|
- // Defines the server to which we want to connect
|
206
|
|
- define('IMAP_SERVER', 'localhost');
|
207
|
|
- // connecting to default port (143)
|
208
|
|
- define('IMAP_PORT', 993);
|
209
|
|
- // best cross-platform compatibility (see http://php.net/imap_open for options)
|
210
|
|
- define('IMAP_OPTIONS', '/ssl/novalidate-cert');
|
211
|
|
- // overwrite the "from" header if it isn't set when sending emails
|
212
|
|
- // options: 'username' - the username will be set (usefull if your login is equal to your emailaddress)
|
213
|
|
- // 'domain' - the value of the "domain" field is used
|
214
|
|
- // '@mydomain.com' - the username is used and the given string will be appended
|
215
|
|
- define('IMAP_DEFAULTFROM', '');
|
216
|
|
- // copy outgoing mail to this folder. If not set d-push will try the default folders
|
217
|
|
- define('IMAP_SENTFOLDER', 'Sent');
|
218
|
|
- // forward messages inline (default false - as attachment)
|
219
|
|
- define('IMAP_INLINE_FORWARD', false);
|
220
|
|
- // don't use imap_mail() to send emails.
|
221
|
|
- // true (default, uses imap_mail, which is broken - false uses mail(),
|
222
|
|
- // which handles cc and from in a more sane way)
|
223
|
|
- define('IMAP_USE_IMAPMAIL', false);
|
224
|
|
-
|
225
|
|
-
|
226
|
|
- // ************************
|
227
|
|
- // BackendMaildir settings
|
228
|
|
- // ************************
|
229
|
|
- define('MAILDIR_BASE', '/tmp');
|
230
|
|
- define('MAILDIR_SUBDIR', 'Maildir');
|
231
|
|
-
|
232
|
|
- // **********************
|
233
|
|
- // BackendVCardDir settings
|
234
|
|
- // **********************
|
235
|
|
- define('VCARDDIR_DIR', '/home/%u/.kde/share/apps/kabc/stdvcf');
|
236
|
|
-
|
|
273
|
+ define('BACKEND_PROVIDER', 'BackendCombined');
|
237
|
274
|
|
238
|
275
|
/**********************************************************************************
|
239
|
276
|
* Search provider settings
|
|
@@ -251,6 +288,45 @@
|
251
|
288
|
// might result in timeout. Default is 10.
|
252
|
289
|
define('SEARCH_MAXRESULTS', 10);
|
253
|
290
|
|
|
291
|
+/**********************************************************************************
|
|
292
|
+ * Kopano Outlook Extension - Settings
|
|
293
|
+ *
|
|
294
|
+ * The Kopano Outlook Extension (KOE) provides MS Outlook 2013 and newer with
|
|
295
|
+ * functionality not provided by ActiveSync or not implemented by Outlook.
|
|
296
|
+ * For more information, see: https://wiki.z-hub.io/x/z4Aa
|
|
297
|
+ */
|
|
298
|
+ // Global Address Book functionality
|
|
299
|
+ define('KOE_CAPABILITY_GAB', true);
|
|
300
|
+ // Synchronize mail flags from the server to Outlook/KOE
|
|
301
|
+ define('KOE_CAPABILITY_RECEIVEFLAGS', true);
|
|
302
|
+ // Encode flags when sending from Outlook/KOE
|
|
303
|
+ define('KOE_CAPABILITY_SENDFLAGS', true);
|
|
304
|
+ // Out-of-office support
|
|
305
|
+ define('KOE_CAPABILITY_OOF', true);
|
|
306
|
+ // Out-of-office support with start & end times (superseeds KOE_CAPABILITY_OOF)
|
|
307
|
+ define('KOE_CAPABILITY_OOFTIMES', true);
|
|
308
|
+ // Notes support
|
|
309
|
+ define('KOE_CAPABILITY_NOTES', true);
|
|
310
|
+ // Shared folder support
|
|
311
|
+ define('KOE_CAPABILITY_SHAREDFOLDER', true);
|
|
312
|
+ // Send-As support for Outlook/KOE and mobiles
|
|
313
|
+ define('KOE_CAPABILITY_SENDAS', true);
|
|
314
|
+ // Secondary Contact folders (own and shared)
|
|
315
|
+ define('KOE_CAPABILITY_SECONDARYCONTACTS', true);
|
|
316
|
+ // Copy WebApp signature into KOE
|
|
317
|
+ define('KOE_CAPABILITY_SIGNATURES', true);
|
|
318
|
+ // Delivery receipt requests
|
|
319
|
+ define('KOE_CAPABILITY_RECEIPTS', true);
|
|
320
|
+ // Impersonate other users
|
|
321
|
+ define('KOE_CAPABILITY_IMPERSONATE', true);
|
|
322
|
+
|
|
323
|
+ // To synchronize the GAB KOE, the GAB store and folderid need to be specified.
|
|
324
|
+ // Use the gab-sync script to generate this data. The name needs to
|
|
325
|
+ // match the config of the gab-sync script.
|
|
326
|
+ // More information here: https://wiki.z-hub.io/x/z4Aa (GAB Sync Script)
|
|
327
|
+ define('KOE_GAB_STORE', 'SYSTEM');
|
|
328
|
+ define('KOE_GAB_FOLDERID', '');
|
|
329
|
+ define('KOE_GAB_NAME', 'Z-Push-KOE-GAB');
|
254
|
330
|
|
255
|
331
|
/**********************************************************************************
|
256
|
332
|
* Synchronize additional folders to all mobiles
|
|
@@ -260,11 +336,11 @@
|
260
|
336
|
*
|
261
|
337
|
* This feature is supported only by certain devices, like iPhones.
|
262
|
338
|
* Check the compatibility list for supported devices:
|
263
|
|
- * http://z-push.sf.net/compatibility
|
|
339
|
+ * http://z-push.org/compatibility
|
264
|
340
|
*
|
265
|
341
|
* To synchronize a folder, add a section setting all parameters as below:
|
266
|
342
|
* store: the ressource where the folder is located.
|
267
|
|
- * Zarafa users use 'SYSTEM' for the 'Public Folder'
|
|
343
|
+ * Kopano users use 'SYSTEM' for the 'Public Folder'
|
268
|
344
|
* folderid: folder id of the folder to be synchronized
|
269
|
345
|
* name: name to be displayed on the mobile device
|
270
|
346
|
* type: supported types are:
|
|
@@ -272,13 +348,21 @@
|
272
|
348
|
* SYNC_FOLDER_TYPE_USER_APPOINTMENT
|
273
|
349
|
* SYNC_FOLDER_TYPE_USER_TASK
|
274
|
350
|
* SYNC_FOLDER_TYPE_USER_MAIL
|
|
351
|
+ * SYNC_FOLDER_TYPE_USER_NOTE
|
|
352
|
+ * flags: sets additional options on the shared folder. Supported are:
|
|
353
|
+ * DeviceManager::FLD_FLAGS_NONE
|
|
354
|
+ * No flags configured, default flag to be set
|
|
355
|
+ * DeviceManager::FLD_FLAGS_SENDASOWNER
|
|
356
|
+ * When replying in this folder, automatically do Send-As
|
|
357
|
+ * DeviceManager::FLD_FLAGS_CALENDARREMINDERS
|
|
358
|
+ * If set, Outlook shows reminders for these shares with KOE
|
275
|
359
|
*
|
276
|
360
|
* Additional notes:
|
277
|
|
- * - on Zarafa systems use backend/zarafa/listfolders.php script to get a list
|
|
361
|
+ * - on Kopano systems use backend/kopano/listfolders.php script to get a list
|
278
|
362
|
* of available folders
|
279
|
363
|
*
|
280
|
|
- * - all Z-Push users must have full writing permissions (secretary rights) so
|
281
|
|
- * the configured folders can be synchronized to the mobile
|
|
364
|
+ * - all Z-Push users must have at least reading permissions so the configured
|
|
365
|
+ * folders can be synchronized to the mobile. Else they are ignored.
|
282
|
366
|
*
|
283
|
367
|
* - this feature is only partly suitable for multi-tenancy environments,
|
284
|
368
|
* as ALL users from ALL tenents need access to the configured store & folder.
|
|
@@ -299,8 +383,7 @@
|
299
|
383
|
'folderid' => "",
|
300
|
384
|
'name' => "Public Contacts",
|
301
|
385
|
'type' => SYNC_FOLDER_TYPE_USER_CONTACT,
|
|
386
|
+ 'flags' => DeviceManager::FLD_FLAGS_NONE,
|
302
|
387
|
),
|
303
|
388
|
*/
|
304
|
389
|
);
|
305
|
|
-
|
306
|
|
-?>
|