Thomas Bruederli
c43040e4e1
Increase default timeout for Bonnie API requests
2015-03-31 15:10:42 +02:00
Aleksander Machniak
a67881cd8c
Fix caching of contact keys ( #4939 )
2015-03-30 09:23:59 -04:00
Thomas Bruederli
7dbb0d1b2f
Handle old revisions and diffs for recurrence instances; forward instance identifier to API for diff requests
2015-03-19 12:34:08 +01:00
Thomas Bruederli
17a3783b9a
Allow to load attachments from old revisions + implement resting of old revisions if write permissions are granted
2015-03-18 20:24:57 +01:00
Thomas Bruederli
6bd0bdabb5
Adapt client to changed Bonnie API
2015-03-18 12:57:36 +01:00
Thomas Bruederli
c51c60eff8
Avoid fatal errors when setting recurrence until date for tasks ( #4852 )
2015-03-16 14:43:02 +01:00
Thomas Bruederli
60205136ee
Code cleanup: get recurrence instance identifiers from utility functions
2015-03-10 14:30:50 +01:00
Thomas Bruederli
03dd4b60b3
Exclude cancelled events from count query on invitations calendar
2015-03-03 15:57:49 +01:00
Thomas Bruederli
3ba55540fd
Don't copy exceptions array and private properties (_*) to exceptions
2015-02-27 12:02:49 +01:00
Thomas Bruederli
31ad93a62e
Provide access to exception instances outside of a recurring event context ( #4722 )
2015-02-26 15:05:55 +01:00
Aleksander Machniak
c0129f7768
Use 'organization' field for sorting if display name is not set ( #3172 )
2015-02-24 12:51:00 -05:00
Thomas Bruederli
b41f2a05cb
Fix rescheduling and notification on change of recurrence rules
2015-02-20 12:32:20 +01:00
Thomas Bruederli
02ef2e6050
Split recurring event into a new series when modifying with this-and-future option ( #4386 ); optimize copying of attachments into new event
2015-02-20 00:11:40 +01:00
Thomas Bruederli
026d62d235
Avoid comparison errors if recurrence is set to '' (used to unset recurrence rules)
2015-02-19 15:58:32 +01:00
Thomas Bruederli
61037eb97c
Fix RSVP flag in iTip REQUESTS
2015-02-19 15:56:46 +01:00
Thomas Bruederli
ac2bd4700f
Store recurrence-id for single (non-recurring) events and use for iTip replies
2015-02-19 15:13:13 +01:00
Thomas Bruederli
422bb0a298
Fix RSVP flag in iCal and storage (defaults to false); remove redundant information from ical PRODID
2015-02-18 10:21:15 +01:00
Thomas Bruederli
6a5a814834
Don't remove properties from exceptions which are equal to the master event. KE17 says:
...
A recurrence exception SHALL copy ALL properties of the base event, and adjust as required,
and it SHALL NOT be applied on top of the orginial event properties (The exception replaces
the complete original event definition for the specific occurrence).
2015-02-16 15:59:50 +01:00
Thomas Bruederli
aaaa9c5818
Take differing parstat values in recurrence exceptions into account when querying for pending/declined/regular events:
...
- Colelct partstat tags from recurrence exceptions when caching
- Querying for 'tags != x-partstat:<email>:needs-action' may miss some valid records
- Do post-filtering on all events, including recurring instances
2015-02-16 11:00:26 +01:00
Thomas Bruederli
108fae9dd0
Correctly save 'this-and-future' replies; remove some internal properties before saving (to cache)
2015-02-15 18:27:38 +01:00
Thomas Bruederli
d564e23aa3
Use the right list of properties relevenat for scheduling (follow-up of commit 12591358
). Static vars don't work here as intended
2015-02-15 17:10:22 +01:00
Thomas Bruederli
12591358e6
Consider a change in recurrence rule significant for rescheduling ( #4366 )
2015-02-15 16:33:39 +01:00
Thomas Bruederli
78622133a9
Reliably identify recurrence instances throughout the application to support invitations of recurring events ( #4387 )
2015-02-15 14:32:31 +01:00
Thomas Bruederli
314501fdb2
Make the list of properties considered 'significant' for scheduling configurable
2015-02-12 11:54:51 +01:00
Thomas Bruederli
ad55fc706d
Fix handling of Recurrence-ID properties for recurrence exceptions to comply with RFC 5545 ( #4385 )
2015-02-12 10:08:22 +01:00
Thomas Bruederli
754a4d51bf
Improve search in calendar: consider recurrence exceptions for indexing and matching ( #4279 ); ignore order of search terms (boolean and matching)
2015-02-05 19:37:13 +01:00
Thomas Bruederli
39449c11ce
Improve groupware object cache synchronization ( #3933 ):
...
- store and compare the number of objects stored after last sync
- use a (configurable) refresh interval and periodically force re-sync
ATTENTION: requires database schema updates
2015-02-05 15:27:28 +01:00
Aleksander Machniak
2c9c463e84
Add optional $type argument in kolab_storage::get_folder()
2015-02-04 05:41:47 -05:00
Thomas Bruederli
b32c36f58f
Fix subscription cache clearing after subscription changes
2015-02-04 10:25:16 +01:00
Thomas Bruederli
17e6662a23
Add unit/functional tests for kolab_storage_folder error checking methods
2015-02-03 22:14:06 +01:00
Thomas Bruederli
29645a4736
Fix db table reference; forward constructor argument ( #4471 )
2015-02-03 17:26:03 +01:00
Thomas Bruederli
948a68136d
Handle possible errors from kolab_storage::get_folder() access ( #4378 )
2015-02-03 16:30:02 +01:00
Thomas Bruederli
5982ce8732
Add error checking/reporting facilities to kolab_storage_folder instances ( #4378 )
2015-02-03 13:15:56 +01:00
Thomas Bruederli
17cf1f4892
Update folder reference in cache (was accidentally removed in 038e269d
)
2015-02-03 12:31:12 +01:00
Thomas Bruederli
038e269d51
Check (expected) folder type and disable access to folder contents or cache if invalid ( #4378 )
2015-01-29 16:48:42 +01:00
Thomas Bruederli
7fe08b2814
Cleanup recurrence exception data when saving events ( #4318 )
2015-01-28 17:27:16 +01:00
Thomas Bruederli
af216b50e3
Improve sync lock setting/reading to avoid race conditions ( #4316 )
2015-01-23 14:43:45 +01:00
Aleksander Machniak
23e4d1b25a
Fix bug where relations/tags members changes were ignored on relation update ( #4095 )
2015-01-22 06:18:27 -05:00
Thomas Bruederli
0a51ccd5a4
Consolidate message reference handling functions into libkolab plugin (in preparation for #4161 )
2015-01-13 22:19:52 +01:00
Aleksander Machniak
bfe6de5b54
Remove redundant updating of uid2msg map in synchronize()
2015-01-12 10:30:50 +01:00
Thomas Bruederli
854779406d
Move utility function to libkolab for common use
2015-01-08 18:22:59 +01:00
Aleksander Machniak
c3e142094f
Fix bug where configuration object UID was modified on object update ( #4051 )
2014-12-09 09:42:46 -05:00
Aleksander Machniak
815ab6596b
Fix Content-Type of configuration objects ( #4029 )
2014-12-05 07:20:34 -05:00
Thomas Bruederli
ae93c7b345
Create domain-aware cache identifiers for groupware folders ( #3991 )
2014-11-27 09:33:40 +01:00
Aleksander Machniak
fb4f815e53
Fix bug where DateTime($date, null) throws an exception ( #3965 )
2014-11-22 12:10:06 -05:00
Aleksander Machniak
ac4f6e7562
Avoid unused variables (also fixed some bugs) found in static code analysis
2014-11-21 10:03:18 +01:00
Aleksander Machniak
e200122308
Fix reading configuration objects of type file_driver ( #3900 )
2014-11-12 03:19:38 -05:00
Thomas Bruederli
c6f5a8233b
Fix handling of RSVP flags
2014-11-06 17:09:59 +01:00
Thomas Bruederli
8627b72357
Avoid hitting executing time limit when synchronizing cache ( #3677 ):
...
This change will make the synchronization process abort before the time limit is reached.
The folder is not flagged as fully synchronized and subsequent requests will continue the synchronization.
Application scripts can read the public 'sync_complete' property and initiate a next sync request.
2014-11-04 13:04:57 +01:00
Aleksander Machniak
2a46aceb2b
Use new rcube_message::get_part_body() method
2014-10-22 14:58:47 +02:00