Commit graph

111 commits

Author SHA1 Message Date
Thomas Bruederli
16770f3612 Compute the real end date-time of a recurring event for caching 2012-07-04 15:57:19 +02:00
Thomas Bruederli
2aa05334e8 Fix timestamp-to-DateTime conversion 2012-07-04 15:57:05 +02:00
Thomas Bruederli
79c8183c0d Add method kolab_date_recurrence::next_instance() for simple iterations 2012-07-04 15:10:36 +02:00
Thomas Bruederli
035534eb00 Make sure events from old Kolab2 format also provide start/end properties as DateTime objects 2012-07-03 10:41:56 +02:00
Thomas Bruederli
0158440400 Fix object recurrence rule processing 2012-07-03 09:56:03 +02:00
Thomas Bruederli
1142a80886 Move classes for recurring events/tasks computation to libkolab 2012-07-03 08:25:55 +02:00
Aleksander Machniak
b4172e7aed s/rc_image_content_type/rcube_mime::image_content_type/ 2012-06-27 12:12:12 +02:00
Thomas Bruederli
8961bf3147 Merge branch 'master' of ssh://git.kolabsys.com/git/roundcube 2012-06-27 10:52:40 +02:00
Thomas Bruederli
290d0f113f Use explicit insert() method to skip delete query when caching a newly created object (updated objects get new msguids and are de-facto new) 2012-06-26 16:54:04 +02:00
Thomas Bruederli
5fa593ad99 Clear cache before deleting a Kolab folder 2012-06-26 16:50:17 +02:00
Thomas Bruederli
af2bf9005c Update changed property when updating a Kolab object 2012-06-26 16:31:42 +02:00
Aleksander Machniak
fbcf125418 Reset 'synclock' flag in _sync_unlock(), so the query isn't executed in shutdown function when not needed 2012-06-26 15:27:26 +02:00
Thomas Bruederli
f05068fb3b Convert timestamps in query parameters 2012-06-22 15:54:15 +02:00
Thomas Bruederli
464b4961cc Save last-modified date (aka 'changed') in cache and allow to use it in queries (#847) 2012-06-22 15:37:09 +02:00
Thomas Bruederli
4f69203125 More code cleanup: use common function from libkolab for folder management and naming 2012-06-21 21:34:08 +02:00
Thomas Bruederli
dce4ed076b Move folder create/rename logic to libkolab for common use in different Kolab plugins 2012-06-21 09:42:24 +02:00
Thomas Bruederli
078b953953 Add getter for a list of object UIDs (#848) 2012-06-20 18:47:01 +02:00
Thomas Bruederli
6d1f67ad92 Allow complex queries for kolab_storage_folder::count(); fix row counting from SQL 2012-06-20 15:32:23 +02:00
Thomas Bruederli
f5824e32b4 Catch format errors when trying to write an object of invalid or unknown type 2012-06-20 10:45:24 +02:00
Thomas Bruederli
d5c2f15ccb Improve attachments handling:
- use Content-ID as key in _attachments list; new attachments have numeric keys
- generate a unique Content-ID for new/changed attachments in libkolab
- bugfix: don't cache empty attachment entries
2012-06-13 17:39:18 +02:00
Thomas Bruederli
f678e8f16a Merge branch 'master' of ssh://git.kolabsys.com/git/roundcube 2012-06-13 10:36:53 +02:00
Thomas Bruederli
40f811b33a Read X-Kolab-Mime-Version headers if available; Url::None => Url::NoType 2012-06-12 11:30:13 +02:00
Thomas Bruederli
d19ee85667 Save created timestamp with every cache entry 2012-06-08 17:49:25 +02:00
Aleksander Machniak
b0b0cd8d17 Set required X-Kolab-Mime-Version header (#837) 2012-06-08 15:15:43 +02:00
Thomas Bruederli
529d16eac3 Cache start/due dates for task objects 2012-06-08 14:10:46 +02:00
Thomas Bruederli
2ad9e2e1ba - Small refactoring: build words index in common kolab_format_xcal class
- Define tags to be cached with task objects
- Allow to query cache with NOT LIKE (!~) queries
2012-06-08 13:15:10 +02:00
Thomas Bruederli
277edc7313 Remove unused argument. Free/busy update is triggered by the calendar (asynchronously) 2012-06-06 11:49:03 +02:00
Thomas Bruederli
435b94f8f6 Merge branch 'master' of ssh://git.kolabsys.com/git/roundcube 2012-06-06 10:24:42 +02:00
Thomas Bruederli
0bd829aa6f Finish reading/writing of Dictionary configuration objects 2012-06-06 10:24:28 +02:00
Thomas Bruederli
ad59203f27 Fix libkolabxml error handling 2012-06-06 10:22:51 +02:00
Aleksander Machniak
3f3cf6bc65 Use Roundcube Framework where applicable, so we can use this code out of Roundcube 2012-06-05 09:15:23 +02:00
Thomas Bruederli
c3ad7d9af1 There's no end date in tasks 2012-05-30 14:49:02 +02:00
Thomas Bruederli
41910ec061 Don't parse new configuration objects with old Horde classes 2012-05-30 14:25:13 +02:00
Thomas Bruederli
f53a1662e3 Strip white-space from xml when caching 2012-05-30 14:24:23 +02:00
Thomas Bruederli
da4fea3a3d Merge branch 'master' of ssh://git.kolabsys.com/git/roundcube 2012-05-30 09:13:42 +02:00
Thomas Bruederli
6bbb34b3ae Use regex-like syntax for LIKE queries to kolab_storage_cache; also use it for calendar search 2012-05-30 09:13:24 +02:00
Thomas Bruederli
b2a7734c34 Little refactoring: new parent class for xcal based Kolab objects such as event and task handling reading/writing of common properties 2012-05-30 08:51:55 +02:00
Thomas Bruederli
e9be3f05ff Read 'max_allowed_packet' from mysql config (requires latest HEAD of Roundcube core) 2012-05-26 15:37:35 +02:00
Thomas Bruederli
b5b26e6800 Always add type parameter to cache queries (#799); remove last parameter from set() 2012-05-26 15:20:41 +02:00
Thomas Bruederli
27a4061c99 Optimize cache synchronization by using extended SQL inserts (#798) 2012-05-26 15:15:17 +02:00
Thomas Bruederli
fab0c00194 Merge branch 'master' of ssh://git.kolabsys.com/git/roundcube 2012-05-25 18:09:12 +02:00
Thomas Bruederli
06d970836c Improve cache synchronization: fetch + insert in one row, increase time limit, unlock on script shutdown (#798) 2012-05-25 18:08:42 +02:00
Aleksander Machniak
3a0e3a6e80 Don't unset lock create date, this won't work with PostgreSQL 2012-05-25 10:43:13 +02:00
Thomas Bruederli
bd1ab069e4 Started implementing task format wrapper 2012-05-23 18:57:46 +02:00
Thomas Bruederli
b93ddae1f5 Add stub classes for more Kolab object types; remove legacy methods 2012-05-23 16:02:41 +02:00
Thomas Bruederli
7d1882ad76 Enforce local time for birthday and anniversary fields 2012-05-23 15:39:53 +02:00
Thomas Bruederli
eca8ebafc3 Read (old) configuration.dictionary objects with new kolab_storage layer; writing not implemented yet, until libkolabxml supports it 2012-05-23 14:41:32 +02:00
Thomas Bruederli
2cd801f7d0 Prepare to handle configuration objects 2012-05-23 14:34:08 +02:00
Thomas Bruederli
9da61e6d4b Reduce code redundancy: implement load() and write() method in parent class kolab_format; do more error checking 2012-05-22 10:14:56 +02:00
Aleksander Machniak
cb61bf76a1 Improved folder_create() method 2012-05-17 15:57:23 +02:00