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