Commit graph

1603 commits

Author SHA1 Message Date
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
Thomas Bruederli
3a9e25e056 Export X-MICROSOFT-CDO-BUSYSTATUS for Outlook CalDAV clients 2014-01-23 15:50:04 +01:00
Thomas Bruederli
54b5b1bdc8 Fix typo 2014-01-23 15:38:27 +01:00
Thomas Bruederli
03736d142e Don't shift all-day event dates into server's timezone (#2463) 2014-01-23 10:03:55 +01:00
Thomas Bruederli
965a9b74b3 Fix anually recurrence end date on 32bit systems by replacing (overflowing) unix timestamps with DateTime objects (#2613) 2014-01-22 11:22:23 +01:00
Thomas Bruederli
8a820d1994 Remove outdated version information 2014-01-22 11:19:53 +01:00
Thomas Bruederli
3de184a5d8 Load config for Kolab address book UI 2014-01-21 16:34:43 +01:00
Thomas Bruederli
3a42ca7b53 Fix icon after Larry skin image update; fix typo 2014-01-21 16:17:10 +01:00
Thomas Bruederli
39829013b6 Also minimize pdf.worker.js 2014-01-20 16:48:30 +01:00
Thomas Bruederli
dcac898f7d Updated pdfviewer plugin to latest version of pdf.js 2014-01-20 16:41:18 +01:00