Thomas Bruederli
c47d2da4e7
Decode escaped commas in various ical property values
2014-02-26 12:15:03 +01:00
Aleksander Machniak
9f7cd83f92
Make 3rd argument of kolab_storage_cache::save() really optional (Bug #2863 )
2014-02-25 10:47:10 +01:00
Thomas Bruederli
f6a381c72f
Merge branch 'master' of ssh://git.kolab.org/git/roundcubemail-plugins-kolab
2014-02-21 16:35:03 +01:00
Aleksander Machniak
0a79c185ed
Add missing columns in initial.sql file (Bug #2867 )
2014-02-20 17:32:30 +01:00
Aleksander Machniak
71c66461d5
Load per-user settings/plugins also just after log in
2014-02-20 15:41:12 +01:00
Thomas Bruederli
8449be6657
Move child tasks to new list if changed during edit
2014-02-20 09:50:03 +01:00
Aleksander Machniak
59f1612909
Merge branch 'master' of ssh://git.kolab.org/git/roundcube
2014-02-20 09:45:26 +01:00
Aleksander Machniak
ba1b8238aa
Update version number in initial DDL file (Bug #2867 )
2014-02-20 09:35:58 +01:00
Thomas Bruederli
f18f76ee4c
Fix moving tasks to another list from the edit dialog ( #2865 )
2014-02-20 09:26:15 +01:00
Thomas Bruederli
e203211ece
Log an object's UID with libkolabxml warnings
2014-02-19 18:56:59 +01:00
Thomas Bruederli
351f7d6153
Avoid null values for empty fields
2014-02-10 16:01:49 +01:00
Thomas Bruederli
bc1164e943
Remove non-unicode characters from sort cols
2014-02-10 14:10:36 +01:00
Thomas Bruederli
7c32605d14
Fix fatal error when attempting to set user on a rcube instance
2014-02-10 12:03:59 +01:00
Thomas Bruederli
af6d366a1f
Optimize access to kolab contacts using a sorted and limited query ( #2828 )
...
- Add columns for sorting in kolab_cache_contact
- Extend bin/modcache.sh script to update existing cache records
- Add setters for ORDER BY and LIMIT clauses
- Adapt the kolab_addressbook plugin to fetch contacts page-wise
ATTENTION: This changeset contains database schema changes!
Run `bin/updatedb.sh --dir plugins/libkolab/SQL --package libkolab`
Afterwards, the cached data needs to be updated. To do so, either run
`plugins/libkolab/bin/modcache.sh update --type=contact`
or execute the following query
DELETE FROM `kolab_folders` WHERE `type`='contact';
2014-02-10 11:46:50 +01:00
Thomas Bruederli
acbd45001c
Return null on error for UID queries (to remain backwards compatible)
2014-02-10 11:39:24 +01:00
Thomas Bruederli
22a1c7a7ee
Don't set error state on simple arrays; simplify query
2014-02-10 09:27:16 +01:00
Thomas Bruederli
816356813c
Save error state in kolab_storage_cache::select() return value
2014-02-10 08:51:51 +01:00
Thomas Bruederli
98741574d9
Always return a valid array/iterator
2014-02-07 13:24:11 +01:00
Thomas Bruederli
449b4d044a
Init iterator key with 0
2014-02-07 09:30:08 +01:00
Thomas Bruederli
1daa305faa
Also implement the Countable interface for full array-like compatibility
2014-02-07 09:29:11 +01:00
Thomas Bruederli
c2b87d4ad5
New utility script tp generate random contact data
2014-02-06 17:38:19 +01:00
Thomas Bruederli
ea131a84e6
Refactor access to storage backend to avoid memory limit errors ( #2828 ):
...
1. query backend and read contact names for sorting
2. sort index according to UI settings and fetched names
3. select the subset for the current page
4. fetch contacts for current page
2014-02-06 17:33:05 +01:00
Thomas Bruederli
69b7803f25
Adapt to kolab_storage_folder optimizations: don't cast resultset into array ( #2828 )
2014-02-06 17:30:40 +01:00
Thomas Bruederli
2ade247a0c
Return a kolab_storage_dataset itertor object from kolab_storage_cache::select()
...
to manage memory usage for large result sets (#2828 ).
Attention!
Do not cast the return value of kolab_storage_folder::select() calls into an array anymore.
2014-02-06 17:25:16 +01:00
Thomas Bruederli
7d39a1808a
Add unit test for commit 10f5a48
2014-02-06 10:55:25 +01:00
Thomas Bruederli
10f5a48531
Add fallback to find VEVENT blocks with RECURRENCE-ID ( #2792 )
2014-02-06 10:54:57 +01:00
Thomas Bruederli
a53ccbacc9
Add screen shots with Kolab skin
2014-02-06 10:11:51 +01:00
Thomas Bruederli
50d9a2acc5
Describe notifications for tasks; unify wording with s/alarms/reminders/
2014-02-05 16:27:08 +01:00
Thomas Bruederli
070a31406c
Fix typos
2014-02-05 16:14:44 +01:00
Thomas Bruederli
b987fb2130
More user guide for calendar, tasklist and address book
2014-02-05 16:12:13 +01:00
Thomas Bruederli
7a883384cd
Fix working and button order
2014-02-05 16:05:50 +01:00
Thomas Bruederli
1cb7a66b05
Describe calendar sharing only if 'kolab'
2014-02-04 18:58:01 +01:00
Thomas Bruederli
9fdec3fcb2
Describe calendar settings and sharing in the user guide docs
2014-02-04 18:43:09 +01:00
Thomas Bruederli
2425268e9a
Correct wording
2014-02-04 18:42:31 +01:00
Thomas Bruederli
b0e09c52e0
Fix color of category name in event view dialog
2014-02-04 17:41:35 +01:00
Thomas Bruederli
d4543bcb5d
Define user guide outline for the tasks module
2014-01-30 17:50:00 +01:00
Thomas Bruederli
7791c7515d
More calendar user guide now including itip invitations and import/export features
2014-01-30 17:28:10 +01:00
Thomas Bruederli
15bef340b0
First set of source files for the Kolab web client user guide. The helpdocs directory will be symlinked into the _plugins directory f the roundcubemail-helpdocs generator.
2014-01-29 19:35:14 +01:00
Thomas Bruederli
2230e97ee9
- Fix updating birthday events
...
- Use address book search to fetch contacts with birthday values only
Attention: this requires changes from [0950ff12dc
] and clearing the cache
for Kolab contact objects:
DELETE FROM kolab_folders WHERE type='contact';
2014-01-28 15:55:45 +01:00
Thomas Bruederli
0950ff12dc
Tag contacts that have a birthday date set and allow to directly select them
2014-01-28 15:51:09 +01:00
Thomas Bruederli
df7030f306
Disable all related form fields if birthdays calendar is not active
2014-01-28 12:03:26 +01:00
Thomas Bruederli
b79179b9c3
Display alarms for birthday events
2014-01-28 11:55:06 +01:00
Thomas Bruederli
92a6e5c28d
Add settings block for birthdays calendar settings
2014-01-28 09:58:54 +01:00
Thomas Bruederli
b9ed08ce78
Clear birthdays calendar cache when contact is updated
2014-01-27 19:50:17 +01:00
Thomas Bruederli
4112437fe9
First shot at the birthdays calendar feature
2014-01-27 19:12:29 +01:00
Thomas Bruederli
01c6a75d16
Consider the configured date format when parsing date/time values for tasks ( #2801 ) + reduce code-duplication
2014-01-27 11:54:45 +01:00
Thomas Bruederli
028c21f4ca
DB driver: accept categories field to be an array. libcalendaring ical parser provides array values here ( #2797 )
2014-01-27 11:25:17 +01:00
Thomas Bruederli
0f57d5c8c8
Deliver date properties as DateTime objects ( #2802 )
2014-01-27 10:06:43 +01:00
Aleksander Machniak
889d8670dc
Support kolab_files_disabled and kolab_files_enabled config
2014-01-24 14:11:24 +01:00
Aleksander Machniak
d7a607e1b1
Fix missing resolving of %dn in kolab_auth_role_settings
2014-01-24 13:44:04 +01:00