diff --git a/conf/app.src b/conf/app.src deleted file mode 100644 index e4dd89f..0000000 --- a/conf/app.src +++ /dev/null @@ -1,6 +0,0 @@ -SOURCE_URL=url of app's source -SOURCE_SUM=sha256 checksum -SOURCE_SUM_PRG=sha256sum -SOURCE_FORMAT=tar.gz -SOURCE_IN_SUBDIR=true -SOURCE_FILENAME= diff --git a/conf/old-backend/config-caldav.php b/conf/old-backend/config-caldav.php deleted file mode 100644 index a6491cd..0000000 --- a/conf/old-backend/config-caldav.php +++ /dev/null @@ -1,56 +0,0 @@ -. -* -* Consult LICENSE file for details -************************************************/ - -// ************************ -// BackendCalDAV settings -// ************************ - -// Server protocol: http or https -define('CALDAV_PROTOCOL', 'https'); - -// Server name -define('CALDAV_SERVER', '__DOMAIN__'); - -// Server port -define('CALDAV_PORT', '443'); - -// Path -define('CALDAV_PATH', 'BAIKALPATH/cal.php/calendars/%u/'); - -// Default CalDAV folder (calendar folder/principal). This will be marked as the default calendar in the mobile -define('CALDAV_PERSONAL', 'default'); - -// If the CalDAV server supports the sync-collection operation -// DAViCal, SOGo and SabreDav support it -// SabreDav version must be at least 1.9.0, otherwise set this to false -// Setting this to false will work with most servers, but it will be slower -define('CALDAV_SUPPORTS_SYNC', false); - - -// Maximum period to sync. -// Some servers don't support more than 10 years so you will need to change this -define('CALDAV_MAX_SYNC_PERIOD', 2147483647); diff --git a/conf/old-backend/config-carddav.php b/conf/old-backend/config-carddav.php deleted file mode 100644 index e4a0e4b..0000000 --- a/conf/old-backend/config-carddav.php +++ /dev/null @@ -1,94 +0,0 @@ -. -* -* Consult LICENSE file for details -************************************************/ - -// ************************ -// BackendCardDAV settings -// ************************ - -// Server protocol: http or https -define('CARDDAV_PROTOCOL', 'https'); - -// Server name -define('CARDDAV_SERVER', 'BAIKALDOMAIN'); - -// Server port -define('CARDDAV_PORT', '443'); - -// Server path to the addressbook, or the principal with the addressbooks -// If your user has more than 1 addressbook point it to the principal. -// Example: user test@domain.com will have 2 addressbooks -// http://localhost/caldav.php/test@domain.com/addresses/personal -// http://localhost/caldav.php/test@domain.com/addresses/work -// You set the CARDDAV_PATH to '/caldav.php/%u/addresses/' and personal and work will be autodiscovered -// %u: replaced with the username -// %d: replaced with the domain -// Add the trailing / -define('CARDDAV_PATH', 'BAIKALPATH/card.php/addressbooks/%u/'); - - -// Server path to the default addressbook -// Mobile device will create new contacts here. It must be under CARDDAV_PATH -// %u: replaced with the username -// %d: replaced with the domain -// Add the trailing / -define('CARDDAV_DEFAULT_PATH', 'BAIKALPATH/card.php/addressbooks/%u/default'); - -// Server path to the GAL addressbook. This addressbook is readonly and searchable by the user, but it will NOT be synced. -// If you don't want GAL, comment it -// %u: replaced with the username -// %d: replaced with the domain -// Add the trailing / - -//define('CARDDAV_GAL_PATH', '/caldav.php/%d/GAL/'); - - -// Minimal length for the search pattern to do the real search. - -//define('CARDDAV_GAL_MIN_LENGTH', 5); - -// Addressbook display name, the name showed in the mobile device -// %u: replaced with the username -// %d: replaced with the domain -define('CARDDAV_CONTACTS_FOLDER_NAME', '%u Addressbook'); - - -// If the CardDAV server supports the sync-collection operation -// DAViCal and SabreDav support it, but Owncloud, SOGo don't -// SabreDav version must be at least 1.9.0, otherwise set this to false -// Setting this to false will work with most servers, but it will be slower: 1 petition for the href of vcards, and 1 petition for each vcard -define('CARDDAV_SUPPORTS_SYNC', false); - - -// If the CardDAV server supports the FN attribute for searches -// DAViCal supports it, but SabreDav, Owncloud and SOGo don't -// Setting this to true will search by FN. If false will search by sn, givenName and email -// It's safe to leave it as false -define('CARDDAV_SUPPORTS_FN_SEARCH', false); - - -// If your carddav server needs to use file extension to recover a vcard. -// Davical needs it -// SOGo official demo online needs it, but some SOGo installation don't need it, so test it -define('CARDDAV_URL_VCARD_EXTENSION', '.vcf'); diff --git a/conf/old-backend/config-combined.php b/conf/old-backend/config-combined.php deleted file mode 100644 index 0efb4c0..0000000 --- a/conf/old-backend/config-combined.php +++ /dev/null @@ -1,84 +0,0 @@ -. -* -* Consult LICENSE file for details -************************************************/ - -class BackendCombinedConfig { - - // ************************* - // BackendCombined settings - // ************************* - /** - * Returns the configuration of the combined backend - * - * @access public - * @return array - * - */ - public static function GetBackendCombinedConfig() { - //use a function for it because php does not allow - //assigning variables to the class members (expecting T_STRING) - return array( - //the order in which the backends are loaded. - //login only succeeds if all backend return true on login - //sending mail: the mail is sent with first backend that is able to send the mail - 'backends' => array( - 'i' => array( - 'name' => 'BackendIMAP', - ), - 'd' => array( - 'name' => 'BackendCardDAV', - ), - 'l' => array( - 'name' => 'BackendCalDAV', - ), - ), - 'delimiter' => '/', - //force one type of folder to one backend - //it must match one of the above defined backends - 'folderbackend' => array( - SYNC_FOLDER_TYPE_INBOX => 'i', - SYNC_FOLDER_TYPE_DRAFTS => 'i', - SYNC_FOLDER_TYPE_WASTEBASKET => 'i', - SYNC_FOLDER_TYPE_SENTMAIL => 'i', - SYNC_FOLDER_TYPE_OUTBOX => 'i', - SYNC_FOLDER_TYPE_TASK => 'l', - SYNC_FOLDER_TYPE_APPOINTMENT => 'l', - SYNC_FOLDER_TYPE_CONTACT => 'd', - SYNC_FOLDER_TYPE_NOTE => 'l', - SYNC_FOLDER_TYPE_JOURNAL => 'l', - SYNC_FOLDER_TYPE_OTHER => 'i', - SYNC_FOLDER_TYPE_USER_MAIL => 'i', - SYNC_FOLDER_TYPE_USER_APPOINTMENT => 'l', - SYNC_FOLDER_TYPE_USER_CONTACT => 'd', - SYNC_FOLDER_TYPE_USER_TASK => 'l', - SYNC_FOLDER_TYPE_USER_JOURNAL => 'l', - SYNC_FOLDER_TYPE_USER_NOTE => 'l', - SYNC_FOLDER_TYPE_UNKNOWN => 'i', - ), - //creating a new folder in the root folder should create a folder in one backend - 'rootcreatefolderbackend' => 'i', - ); - } -} diff --git a/conf/old-backend/config-imap.php b/conf/old-backend/config-imap.php deleted file mode 100644 index b6c2d16..0000000 --- a/conf/old-backend/config-imap.php +++ /dev/null @@ -1,222 +0,0 @@ -. -* -* Consult LICENSE file for details -************************************************/ - -// ************************ -// BackendIMAP settings -// ************************ - -// Defines the server to which we want to connect -define('IMAP_SERVER', 'localhost'); - -// connecting to default port (143) -define('IMAP_PORT', 993); - -// best cross-platform compatibility (see http://php.net/imap_open for options) -define('IMAP_OPTIONS', '/ssl/novalidate-cert'); - - -// Mark messages as read when moving to Trash. -// BE AWARE that you will lose the unread flag, but some mail clients do this so the Trash folder doesn't get boldened -define('IMAP_AUTOSEEN_ON_DELETE', false); - - -// IMPORTANT: BASIC IMAP FOLDERS [ask your mail admin] - // We can have diferent cases (case insensitive): - // 1. - // inbox - // sent - // drafts - // trash - // 2. - // inbox - // common.sent - // common.drafts - // common.trash - // 3. - // common.inbox - // common.sent - // common.drafts - // common.trash - // 4. - // common - // common.sent - // common.drafts - // common.trash - // - // gmail is a special case, where the default folders are under the [gmail] prefix and the folders defined by the user are under INBOX. - // This configuration seems to work: - // define('IMAP_FOLDER_PREFIX', ''); - // define('IMAP_FOLDER_PREFIX_IN_INBOX', false); - // define('IMAP_FOLDER_INBOX', 'INBOX'); - // define('IMAP_FOLDER_SENT', '[Gmail]/Sent'); - // define('IMAP_FOLDER_DRAFT', '[Gmail]/Drafts'); - // define('IMAP_FOLDER_TRASH', '[Gmail]/Trash'); - // define('IMAP_FOLDER_SPAM', '[Gmail]/Spam'); - // define('IMAP_FOLDER_ARCHIVE', '[Gmail]/All Mail'); - -// Since I know you won't configure this, I will raise an error unless you do. -// When configured set this to true to remove the error -define('IMAP_FOLDER_CONFIGURED', true); - -// Folder prefix is the common part in your names (3, 4) -define('IMAP_FOLDER_PREFIX', ''); - -// Inbox will have the preffix preppend (3 & 4 to true) -define('IMAP_FOLDER_PREFIX_IN_INBOX', false); - -// Inbox folder name (case doesn't matter) - (empty in 4) -define('IMAP_FOLDER_INBOX', 'INBOX'); - -// Sent folder name (case doesn't matter) -define('IMAP_FOLDER_SENT', 'Sent'); - -// Draft folder name (case doesn't matter) -define('IMAP_FOLDER_DRAFT', 'Drafts'); - -// Trash folder name (case doesn't matter) -define('IMAP_FOLDER_TRASH', 'Trash'); - -// Spam folder name (case doesn't matter). Only showed as special by iOS devices -define('IMAP_FOLDER_SPAM', 'Junk'); - -// Archive folder name (case doesn't matter). Only showed as special by iOS devices -define('IMAP_FOLDER_ARCHIVE', 'Archive'); - - - -// forward messages inline (default true - inlined) -define('IMAP_INLINE_FORWARD', true); - -// list of folders we want to exclude from sync. Names, or part of it, separated by | -// example: dovecot.sieve|archive|spam -define('IMAP_EXCLUDED_FOLDERS', ''); - - - -// overwrite the "from" header with some value -// options: -// '' - do nothing, use the From header -// 'username' - the username will be set (usefull if your login is equal to your emailaddress) -// 'domain' - the value of the "domain" field is used -// 'sql' - the username will be the result of a sql query. REMEMBER TO INSTALL PHP-PDO AND PHP-DATABASE -// 'ldap' - the username will be the result of a ldap query. REMEMBER TO INSTALL PHP-LDAP!! -// '@mydomain.com' - the username is used and the given string will be appended -//define('IMAP_DEFAULTFROM', '@DOMAINTOCHANGE'); -define('IMAP_DEFAULTFROM', ''); - -// DSN: formatted PDO connection string -// mysql:host=xxx;port=xxx;dbname=xxx -// USER: username to DB -// PASSWORD: password to DB -// OPTIONS: array with options needed -// QUERY: query to execute -// FIELDS: columns in the query -// FROM: string that will be the from, replacing the column names with the values -//define('IMAP_FROM_SQL_DSN', ''); -//define('IMAP_FROM_SQL_USER', ''); -//define('IMAP_FROM_SQL_PASSWORD', ''); -//define('IMAP_FROM_SQL_OPTIONS', serialize(array(PDO::ATTR_PERSISTENT => true))); -//define('IMAP_FROM_SQL_QUERY', "select first_name, last_name, mail_address from users where mail_address = '#username@#domain'"); -//A tester : -//define('IMAP_FROM_SQL_QUERY', "select first_name, last_name, mail_address from users where users = '#username@#domain'"); -//define('IMAP_FROM_SQL_FIELDS', serialize(array('first_name', 'last_name', 'mail_address'))); -//define('IMAP_FROM_SQL_FROM', '#first_name #last_name <#mail_address>'); -//define('IMAP_FROM_SQL_FULLNAME', '#first_name #last_name'); - -// SERVER: ldap server -// SERVER_PORT: ldap port -// USER: dn to use for connecting -// PASSWORD: password -// QUERY: query to execute -// FIELDS: columns in the query -// FROM: string that will be the from, replacing the field names with the values -//define('IMAP_FROM_LDAP_SERVER', 'localhost'); -//define('IMAP_FROM_LDAP_SERVER_PORT', '389'); -//define('IMAP_FROM_LDAP_USER', 'cn=zpush,ou=servers,dc=zpush,dc=org'); -//define('IMAP_FROM_LDAP_PASSWORD', 'password'); -//define('IMAP_FROM_LDAP_BASE', 'dc=zpush,dc=org'); -//define('IMAP_FROM_LDAP_QUERY', '(mail=#username@#domain)'); -//define('IMAP_FROM_LDAP_USER', ''); -//define('IMAP_FROM_LDAP_PASSWORD', ''); -//define('IMAP_FROM_LDAP_BASE', 'dc=yunohost,dc=org'); -//a revoir, le mail n'est pas le username ! exemple login : john email john.doe@domain.tld -//define('IMAP_FROM_LDAP_QUERY', '(mail=#username)'); -//define('IMAP_FROM_LDAP_QUERY', '(mail=#mail)'); - -//define('IMAP_FROM_LDAP_FIELDS', serialize(array('givenname', 'sn', 'mail'))); -//define('IMAP_FROM_LDAP_FROM', '#givenname #sn <#mail>'); -//define('IMAP_FROM_LDAP_FULLNAME', '#givenname #sn'); - - - -// Method used for sending mail -// mail => mail() php function -// sendmail => sendmail executable -// smtp => direct connection against SMTP -define('IMAP_SMTP_METHOD', 'smtp'); - -global $imap_smtp_params; -// SMTP Parameters -// mail : no params -//$imap_smtp_params = array(); -// sendmail -//$imap_smtp_params = array('sendmail_path' => '/usr/bin/sendmail', 'sendmail_args' => '-i'); -// smtp -// "host" - The server to connect. Default is localhost. -// "port" - The port to connect. Default is 25. -// "auth" - Whether or not to use SMTP authentication. Default is FALSE. -// "username" - The username to use for SMTP authentication. "imap_username" for using the same username as the imap server -// "password" - The password to use for SMTP authentication. "imap_password" for using the same password as the imap server -// "localhost" - The value to give when sending EHLO or HELO. Default is localhost -// "timeout" - The SMTP connection timeout. Default is NULL (no timeout). -// "verp" - Whether to use VERP or not. Default is FALSE. -// "debug" - Whether to enable SMTP debug mode or not. Default is FALSE. -// "persist" - Indicates whether or not the SMTP connection should persist over multiple calls to the send() method. -// "pipelining" - Indicates whether or not the SMTP commands pipelining should be used. -// "verify_peer" - Require verification of SSL certificate used. Default is TRUE. -// "verify_peer_name" - Require verification of peer name. Default is TRUE. -// "allow_self_signed" - Allow self-signed certificates. Requires verify_peer. Default is FALSE. -//$imap_smtp_params = array('host' => 'localhost', 'port' => 25, 'auth' => false); -// If you want to use SSL with port 25 or port 465 you must preppend "ssl://" before the hostname or IP of your SMTP server -// IMPORTANT: To use SSL you must use PHP 5.1 or later, install openssl libs and use ssl:// within the host variable -// IMPORTANT: To use SSL with PHP 5.6 you should set verify_peer, verify_peer_name and allow_self_signed -//$imap_smtp_params = array('host' => 'ssl://localhost', 'port' => 465, 'auth' => true, 'username' => 'imap_username', 'password' => 'imap_password'); -$imap_smtp_params = array('host' => 'tcp://DOMAINTOCHANGE', 'port' => 587, 'auth' => true, 'username' => 'imap_username', 'password' => 'imap_password', 'localhost' => 'DOMAINTOCHANGE', 'verify_peer' => false, 'verify_peer_name' => false, 'allow_self_signed' => true); - - - - -// If you are using IMAP_SMTP_METHOD = mail or sendmail and your sent messages are not correctly displayed you can change this to "\n". -// BUT, it doesn't comply with RFC 2822 and will break if using smtp method -define('MAIL_MIMEPART_CRLF', "\r\n"); - - -// A file containing file mime types->extension mappings. -// SELINUX users: make sure the file has a security context accesible by your apache/php-fpm process -define('SYSTEM_MIME_TYPES_MAPPING', '/etc/mime.types'); - - -// Use BackendCalDAV for Meetings. You cannot hope to get that functionality working without a caldav backend. -define('IMAP_MEETING_USE_CALDAV', FLAGTOCHANGE); diff --git a/conf/old-backend/config.php b/conf/old-backend/config.php deleted file mode 100644 index 0c3ed7f..0000000 --- a/conf/old-backend/config.php +++ /dev/null @@ -1,369 +0,0 @@ -. -* -* Consult LICENSE file for details -************************************************/ - -/********************************************************************************** - * Default settings - */ - // Defines the default time zone, change e.g. to "Europe/London" if necessary - define('TIMEZONE', ''); - - // Defines the base path on the server - define('BASE_PATH', dirname($_SERVER['SCRIPT_FILENAME']). '/'); - - // Try to set unlimited timeout - define('SCRIPT_TIMEOUT', 0); - - // When accessing through a proxy, the "X-Forwarded-For" header contains the original remote IP - define('USE_X_FORWARDED_FOR_HEADER', false); - - // When using client certificates, we can check if the login sent matches the owner of the certificate. - // This setting specifies the owner parameter in the certificate to look at. - define("CERTIFICATE_OWNER_PARAMETER", "SSL_CLIENT_S_DN_CN"); - - /* - * Whether to use the complete email address as a login name - * (e.g. user@company.com) or the username only (user). - * This is required for Z-Push to work properly after autodiscover. - * Possible values: - * false - use the username only. - * true - string the mobile sends as username, e.g. full email address (default). - */ - define('USE_FULLEMAIL_FOR_LOGIN', true); - -/********************************************************************************** - * StateMachine setting - * - * These StateMachines can be used: - * FILE - FileStateMachine (default). Needs STATE_DIR set as well. - * SQL - SqlStateMachine has own configuration file. STATE_DIR is ignored. - * State migration script is available, more informations: https://wiki.z-hub.io/x/xIAa - */ - define('STATE_MACHINE', 'FILE'); - define('STATE_DIR', 'STATEDIRTOCHANGE/'); - -/********************************************************************************** - * IPC - InterProcessCommunication - * - * Is either provided by using shared memory on a single host or - * using the memcache provider for multi-host environments. - * When another implementation should be used, the class can be set here explicitly. - * If empty Z-Push will try to use available providers. - */ - define('IPC_PROVIDER', ''); - -/********************************************************************************** - * Logging settings - * - * The LOGBACKEND specifies where the logs are sent to. - * Either to file ("filelog") or to a "syslog" server or a custom log class in core/log/logclass. - * filelog and syslog have several options that can be set below. - * For more information about the syslog configuration, see https://wiki.z-hub.io/x/HIAT - - * Possible LOGLEVEL and LOGUSERLEVEL values are: - * LOGLEVEL_OFF - no logging - * LOGLEVEL_FATAL - log only critical errors - * LOGLEVEL_ERROR - logs events which might require corrective actions - * LOGLEVEL_WARN - might lead to an error or require corrective actions in the future - * LOGLEVEL_INFO - usually completed actions - * LOGLEVEL_DEBUG - debugging information, typically only meaningful to developers - * LOGLEVEL_WBXML - also prints the WBXML sent to/from the device - * LOGLEVEL_DEVICEID - also prints the device id for every log entry - * LOGLEVEL_WBXMLSTACK - also prints the contents of WBXML stack - * - * The verbosity increases from top to bottom. More verbose levels include less verbose - * ones, e.g. setting to LOGLEVEL_DEBUG will also output LOGLEVEL_FATAL, LOGLEVEL_ERROR, - * LOGLEVEL_WARN and LOGLEVEL_INFO level entries. - * - * LOGAUTHFAIL is logged to the LOGBACKEND. - */ - define('LOGBACKEND', 'filelog'); - define('LOGLEVEL', LOGLEVEL_INFO); - define('LOGAUTHFAIL', false); - - // To save e.g. WBXML data only for selected users, add the usernames to the array - // The data will be saved into a dedicated file per user in the LOGFILEDIR - // Users have to be encapusulated in quotes, several users are comma separated, like: - // $specialLogUsers = array('info@domain.com', 'myusername'); - define('LOGUSERLEVEL', LOGLEVEL_DEVICEID); - $specialLogUsers = array(); - - // Filelog settings - define('LOGFILEDIR', 'LOGTOCHANGE/'); - define('LOGFILE', LOGFILEDIR . 'z-push.log'); - define('LOGERRORFILE', LOGFILEDIR . 'z-push-error.log'); - - // Syslog settings - // false will log to local syslog, otherwise put the remote syslog IP here - define('LOG_SYSLOG_HOST', false); - // Syslog port - define('LOG_SYSLOG_PORT', 514); - // Program showed in the syslog. Useful if you have more than one instance login to the same syslog - define('LOG_SYSLOG_PROGRAM', 'z-push'); - // Syslog facility - use LOG_USER when running on Windows - define('LOG_SYSLOG_FACILITY', LOG_LOCAL0); - - // Location of the trusted CA, e.g. '/etc/ssl/certs/EmailCA.pem' - // Uncomment and modify the following line if the validation of the certificates fails. - // define('CAINFO', '/etc/ssl/certs/EmailCA.pem'); - -/********************************************************************************** - * Mobile settings - */ - // Device Provisioning - define('PROVISIONING', true); - - // This option allows the 'loose enforcement' of the provisioning policies for older - // devices which don't support provisioning (like WM 5 and HTC Android Mail) - dw2412 contribution - // false (default) - Enforce provisioning for all devices - // true - allow older devices, but enforce policies on devices which support it - define('LOOSE_PROVISIONING', false); - - // The file containing the policies' settings. - // Set a full path or relative to the z-push main directory - define('PROVISIONING_POLICYFILE', 'policies.ini'); - - // Default conflict preference - // Some devices allow to set if the server or PIM (mobile) - // should win in case of a synchronization conflict - // SYNC_CONFLICT_OVERWRITE_SERVER - Server is overwritten, PIM wins - // SYNC_CONFLICT_OVERWRITE_PIM - PIM is overwritten, Server wins (default) - define('SYNC_CONFLICT_DEFAULT', SYNC_CONFLICT_OVERWRITE_PIM); - - // Global limitation of items to be synchronized - // The mobile can define a sync back period for calendar and email items - // For large stores with many items the time period could be limited to a max value - // If the mobile transmits a wider time period, the defined max value is used - // Applicable values: - // SYNC_FILTERTYPE_ALL (default, no limitation) - // SYNC_FILTERTYPE_1DAY, SYNC_FILTERTYPE_3DAYS, SYNC_FILTERTYPE_1WEEK, SYNC_FILTERTYPE_2WEEKS, - // SYNC_FILTERTYPE_1MONTH, SYNC_FILTERTYPE_3MONTHS, SYNC_FILTERTYPE_6MONTHS - define('SYNC_FILTERTIME_MAX', SYNC_FILTERTYPE_ALL); - - // Interval in seconds before checking if there are changes on the server when in Ping. - // It means the highest time span before a change is pushed to a mobile. Set it to - // a higher value if you have a high load on the server. - define('PING_INTERVAL', 30); - - // Set the fileas (save as) order for contacts in the webaccess/webapp/outlook. - // It will only affect new/modified contacts on the mobile which then are synced to the server. - // Possible values are: - // SYNC_FILEAS_FIRSTLAST - fileas will be "Firstname Middlename Lastname" - // SYNC_FILEAS_LASTFIRST - fileas will be "Lastname, Firstname Middlename" - // SYNC_FILEAS_COMPANYONLY - fileas will be "Company" - // SYNC_FILEAS_COMPANYLAST - fileas will be "Company (Lastname, Firstname Middlename)" - // SYNC_FILEAS_COMPANYFIRST - fileas will be "Company (Firstname Middlename Lastname)" - // SYNC_FILEAS_LASTCOMPANY - fileas will be "Lastname, Firstname Middlename (Company)" - // SYNC_FILEAS_FIRSTCOMPANY - fileas will be "Firstname Middlename Lastname (Company)" - // The company-fileas will only be set if a contact has a company set. If one of - // company-fileas is selected and a contact doesn't have a company set, it will default - // to SYNC_FILEAS_FIRSTLAST or SYNC_FILEAS_LASTFIRST (depending on if last or first - // option is selected for company). - // If SYNC_FILEAS_COMPANYONLY is selected and company of the contact is not set - // SYNC_FILEAS_LASTFIRST will be used - define('FILEAS_ORDER', SYNC_FILEAS_LASTFIRST); - - // Maximum amount of items to be synchronized per request. - // Normally this value is requested by the mobile. Common values are 5, 25, 50 or 100. - // Exporting too much items can cause mobile timeout on busy systems. - // Z-Push will use the lowest provided value, either set here or by the mobile. - // MS Outlook 2013+ request up to 512 items to accelerate the sync process. - // If you detect high load (also on subsystems) you could try a lower setting. - // max: 512 - value used if mobile does not limit amount of items - define('SYNC_MAX_ITEMS', 512); - - // The devices usually send a list of supported properties for calendar and contact - // items. If a device does not includes such a supported property in Sync request, - // it means the property's value will be deleted on the server. - // However some devices do not send a list of supported properties. It is then impossible - // to tell if a property was deleted or it was not set at all if it does not appear in Sync. - // This parameter defines Z-Push behaviour during Sync if a device does not issue a list with - // supported properties. - // See also https://jira.z-hub.io/browse/ZP-302. - // Possible values: - // false - do not unset properties which are not sent during Sync (default) - // true - unset properties which are not sent during Sync - define('UNSET_UNDEFINED_PROPERTIES', false); - - // ActiveSync specifies that a contact photo may not exceed 48 KB. This value is checked - // in the semantic sanity checks and contacts with larger photos are not synchronized. - // This limitation is not being followed by the ActiveSync clients which set much bigger - // contact photos. You can override the default value of the max photo size. - // default: 5242880 - 5 MB default max photo size in bytes - define('SYNC_CONTACTS_MAXPICTURESIZE', 5242880); - - // Over the WebserviceUsers command it is possible to retrieve a list of all - // known devices and users on this Z-Push system. The authenticated user needs to have - // admin rights and a public folder must exist. - // In multicompany environments this enable an admin user of any company to retrieve - // this full list, so this feature is disabled by default. Enable with care. - define('ALLOW_WEBSERVICE_USERS_ACCESS', false); - - // Users with many folders can use the 'partial foldersync' feature, where the server - // actively stops processing the folder list if it takes too long. Other requests are - // then redirected to the FolderSync to synchronize the remaining items. - // Device compatibility for this procedure is not fully understood. - // NOTE: THIS IS AN EXPERIMENTAL FEATURE WHICH COULD PREVENT YOUR MOBILES FROM SYNCHRONIZING. - define('USE_PARTIAL_FOLDERSYNC', false); - - // The minimum accepted time in second that a ping command should last. - // It is strongly advised to keep this config to false. Some device - // might not be able to send a higher value than the one specificied here and thus - // unable to start a push connection. - // If set to false, there will be no lower bound to the ping lifetime. - // The minimum accepted value is 1 second. The maximum accepted value is 3540 seconds (59 minutes). - define('PING_LOWER_BOUND_LIFETIME', false); - - // The maximum accepted time in second that a ping command should last. - // If set to false, there will be no higher bound to the ping lifetime. - // The minimum accepted value is 1 second. The maximum accepted value is 3540 seconds (59 minutes). - define('PING_HIGHER_BOUND_LIFETIME', false); - - // Maximum response time - // Mobiles implement different timeouts to their TCP/IP connections. Android devices for example - // have a hard timeout of 30 seconds. If the server is not able to answer a request within this timeframe, - // the answer will not be recieved and the device will send a new one overloading the server. - // There are three categories - // - Short timeout - server has up within 30 seconds - is automatically applied for not categorized types - // - Medium timeout - server has up to 90 seconds to respond - // - Long timeout - server has up to 4 minutes to respond - // If a timeout is almost reached the server will break and sent the results it has until this - // point. You can add DeviceType strings to the categories. - // In general longer timeouts are better, because more data can be streamed at once. - define('SYNC_TIMEOUT_MEDIUM_DEVICETYPES', "SAMSUNGGTI"); - define('SYNC_TIMEOUT_LONG_DEVICETYPES', "iPod, iPad, iPhone, WP, WindowsOutlook"); - - // Time in seconds the device should wait whenever the service is unavailable, - // e.g. when a backend service is unavailable. - // Z-Push sends a "Retry-After" header in the response with the here defined value. - // It is up to the device to respect or not this directive so even if this option is set, - // the device might not wait requested time frame. - // Number of seconds before retry, to disable set to: false - define('RETRY_AFTER_DELAY', 300); - -/********************************************************************************** - * Backend settings - */ - // the backend data provider - define('BACKEND_PROVIDER', 'BACKENDTOCHANGE'); - -/********************************************************************************** - * Search provider settings - * - * Alternative backend to perform SEARCH requests (GAL search) - * By default the main Backend defines the preferred search functionality. - * If set, the Search Provider will always be preferred. - * Use 'BackendSearchLDAP' to search in a LDAP directory (see backend/searchldap/config.php) - */ - define('SEARCH_PROVIDER', ''); - // Time in seconds for the server search. Setting it too high might result in timeout. - // Setting it too low might not return all results. Default is 10. - define('SEARCH_WAIT', 10); - // The maximum number of results to send to the client. Setting it too high - // might result in timeout. Default is 10. - define('SEARCH_MAXRESULTS', 10); - -/********************************************************************************** - * Kopano Outlook Extension - Settings - * - * The Kopano Outlook Extension (KOE) provides MS Outlook 2013 and newer with - * functionality not provided by ActiveSync or not implemented by Outlook. - * For more information, see: https://wiki.z-hub.io/x/z4Aa - */ - // Global Address Book functionality - define('KOE_CAPABILITY_GAB', false); - // Synchronize mail flags from the server to Outlook/KOE - define('KOE_CAPABILITY_RECEIVEFLAGS', false); - // Encode flags when sending from Outlook/KOE - define('KOE_CAPABILITY_SENDFLAGS', false); - // Out-of-office support - define('KOE_CAPABILITY_OOF', false); - // Out-of-office support with start & end times (superseeds KOE_CAPABILITY_OOF) - define('KOE_CAPABILITY_OOFTIMES', false); - // Notes support - define('KOE_CAPABILITY_NOTES', false); - // Shared folder support - define('KOE_CAPABILITY_SHAREDFOLDER', false); - // Send-As support for Outlook/KOE and mobiles - define('KOE_CAPABILITY_SENDAS', false); - - // To synchronize the GAB KOE, the GAB store and folderid need to be specified. - // Use the gab-sync script to generate this data. The name needs to - // match the config of the gab-sync script. - // More information here: https://wiki.z-hub.io/x/z4Aa (GAB Sync Script) - define('KOE_GAB_STORE', 'SYSTEM'); - define('KOE_GAB_FOLDERID', ''); - define('KOE_GAB_NAME', 'Z-Push-KOE-GAB'); - -/********************************************************************************** - * Synchronize additional folders to all mobiles - * - * With this feature, special folders can be synchronized to all mobiles. - * This is useful for e.g. global company contacts. - * - * This feature is supported only by certain devices, like iPhones. - * Check the compatibility list for supported devices: - * http://z-push.org/compatibility - * - * To synchronize a folder, add a section setting all parameters as below: - * store: the ressource where the folder is located. - * Kopano users use 'SYSTEM' for the 'Public Folder' - * folderid: folder id of the folder to be synchronized - * name: name to be displayed on the mobile device - * type: supported types are: - * SYNC_FOLDER_TYPE_USER_CONTACT - * SYNC_FOLDER_TYPE_USER_APPOINTMENT - * SYNC_FOLDER_TYPE_USER_TASK - * SYNC_FOLDER_TYPE_USER_MAIL - * SYNC_FOLDER_TYPE_USER_NOTE - * - * Additional notes: - * - on Kopano systems use backend/kopano/listfolders.php script to get a list - * of available folders - * - * - all Z-Push users must have at least reading permissions so the configured - * folders can be synchronized to the mobile. Else they are ignored. - * - * - this feature is only partly suitable for multi-tenancy environments, - * as ALL users from ALL tenents need access to the configured store & folder. - * When configuring a public folder, this will cause problems, as each user has - * a different public folder in his tenant, so the folder are not available. - - * - changing this configuration could cause HIGH LOAD on the system, as all - * connected devices will be updated and load the data contained in the - * added/modified folders. - */ - - $additionalFolders = array( - // demo entry for the synchronization of contacts from the public folder. - // uncomment (remove '/*' '*/') and fill in the folderid -/* - array( - 'store' => "SYSTEM", - 'folderid' => "", - 'name' => "Public Contacts", - 'type' => SYNC_FOLDER_TYPE_USER_CONTACT, - ), -*/ - ); diff --git a/conf/old-backend/z-push.conf b/conf/old-backend/z-push.conf deleted file mode 100644 index a9bf5a5..0000000 --- a/conf/old-backend/z-push.conf +++ /dev/null @@ -1,47 +0,0 @@ -server { - server_name localhost; # Put your server name - - # Uncomment the following lines to enable SSL support if not configured yet - #listen 443 ssl; - #listen [::]:443 ssl; - #ssl on; - #ssl_certificate /path/to/ssl.crt; # Put in the correct path - #ssl_certificate_key /path/to/ssl.key; # Put in the correct path - - # If you're using PHP-FPM uncomment the following lines. - #include fastcgi_params; - #fastcgi_index index.php; - #fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - #fastcgi_param REQUEST_URI $1; - #fastcgi_param PHP_FLAG "magic_quotes_gpc=off \n register_globals=off \n magic_quotes_runtime=off \n short_open_tag=on"; - #fastcgi_param PHP_VALUE "post_max_size=20M \n upload_max_filesize=20M \n max_execution_time=3660"; - #fastcgi_param HTTP_PROXY ""; # Mitigate https://httpoxy.org/ vulnerabilities - #fastcgi_read_timeout 3660; # Z-Push Ping might run 3600s, but to be safe - - location /Microsoft-Server-ActiveSync { - alias /usr/share/z-push/index.php; - - access_log /var/log/nginx/z-push-access.log; - error_log /var/log/nginx/z-push-error.log; - - # Attachments ca 15MB max (since binary data needs to be base64 encoded in mine, which results in in about 33% overhead) - client_max_body_size 20m; - client_body_buffer_size 128k; - - # Select one of the fastcgi_pass values or adapt to your configuration - include snippets/z-push-php.conf; - } - - location /AutoDiscover/AutoDiscover.xml { - include snippets/z-push-autodiscover.conf; - include snippets/z-push-php.conf; - } - location /Autodiscover/Autodiscover.xml { - include snippets/z-push-autodiscover.conf; - include snippets/z-push-php.conf; - } - location /autodiscover/autodiscover.xml { - include snippets/z-push-autodiscover.conf; - include snippets/z-push-php.conf; - } -}