Commit Graph

258 Commits

Author SHA1 Message Date
Ralf Becker
239793470b adding an iterator for iCal files to minimize memory footprint on import of huge iCal files (not yet used for iCal data supplied as string, eg. from SyncML, as calendar_ical::importVCal uses count() and array access to returned components/events, and not just looping over it via foreach) 2010-04-14 10:19:41 +00:00
Jörg Lehrke
15e379249f Fix group participant issue 2010-04-12 07:20:11 +00:00
Jörg Lehrke
b0532e4ac2 Fix group participant localization issue 2010-04-12 06:31:30 +00:00
Jörg Lehrke
0dfb44228c Fix SyncML preferences 2010-03-24 11:37:22 +00:00
Jörg Lehrke
42a09eda30 Add configurable client character set for SyncML & various fixes 2010-03-22 18:03:23 +00:00
Ralf Becker
57adecd8ff fixed after r29540 broken install:
- calling egw_time::getTimezones() not possible during setup time -->
  stalling all installs
- using tz_id=1 for a default is not possible, as that's the first
  regular tz_id on new install --> using '0' now
- added translation for that new calendar setting
2010-03-22 14:20:19 +00:00
Jörg Lehrke
7f2e37b5eb Configurable timezone for file export of calendar data 2010-03-17 16:57:03 +00:00
Jörg Lehrke
8b5dfcb926 Fix CLASS:PRIVATE issue 2010-03-15 17:18:17 +00:00
Jörg Lehrke
0978663ada Fix Funambol STATUS issue 2010-03-08 13:54:13 +00:00
Jörg Lehrke
a8804a44ef GroupDAV updates 2010-03-06 23:06:43 +00:00
Christian Binder
b39c0affba revert nonsense commit from jaytraxx 2010-03-02 18:21:50 +00:00
Christian Binder
fcc50858ee set whole day flag on import if necessary - this is needed for better recognition in bo class 2010-03-01 15:37:59 +00:00
Jörg Lehrke
0412ebbb33 Set ORGANIZER for KDE 2010-02-26 15:39:46 +00:00
Jörg Lehrke
c816b4188e Fix (pseudo) exception handling in CalDAV 2010-02-26 12:37:07 +00:00
Jörg Lehrke
b2b8b35383 Fix various recurring event issues 2010-02-24 15:05:00 +00:00
Jörg Lehrke
85b6ba5ef0 Cleanup issues found during backport 2010-02-23 18:19:12 +00:00
Jörg Lehrke
08dbf52b66 Fix typos and code cleanup 2010-02-22 10:02:33 +00:00
Jörg Lehrke
21ccdd5f28 Fix various synchronization issues (SyncML & CalDAV) 2010-02-17 13:29:28 +00:00
Jörg Lehrke
52ea4512ca Improve find_event() again 2010-02-11 07:33:32 +00:00
Jörg Lehrke
b6097fa156 SyncML Content Handling
* Improved find-methods
* Timezone support for InfoLog
* SyncML Preferences
    - addressbook and address list are now joined
    - Primary User Group for addressbook and calendar
* SlowSync uses old mapping information (can be disabled within the preferences)
2010-02-09 21:56:39 +00:00
Jörg Lehrke
32639bd47e Major SyncML Calendar update
- SIFE support improved
  - various vCalendar 1.0 issues fixed
  - device specific timezone support for recurring events
  - pseudo exception handling improvements
2010-01-29 21:42:54 +00:00
Christian Binder
98fe270524 fixed catching value from non-existing var 2010-01-23 09:53:38 +00:00
Jörg Lehrke
14e7c0cd87 Add filter to calendar_so::get_recurrence_exceptions() method 2010-01-14 17:01:30 +00:00
Jörg Lehrke
023b5979dd Enable SIFE again 2010-01-13 20:48:39 +00:00
Jörg Lehrke
6bf3be83fc Fix empty EXDATE issue 2010-01-13 06:17:30 +00:00
Jörg Lehrke
b358505359 Fix vCal 1.0 RRULE issues again :-o 2010-01-12 18:31:53 +00:00
Jörg Lehrke
c8b5f589b6 Fix vCal 1.0 RRULE issue again ;-( 2010-01-12 15:08:15 +00:00
Jörg Lehrke
0f88cd4553 Fix vCal 1.0 RRULE issue 2010-01-12 13:54:30 +00:00
Jörg Lehrke
3bb60af5f1 Enforce SINGLE, if detected; cleanup logging again 2010-01-11 18:15:44 +00:00
Jörg Lehrke
548f5f8c98 Fix various issues introduced with Funambol adjustments; code cleanup 2010-01-10 19:02:16 +00:00
Jörg Lehrke
70aee0a67d Fix task priorities for Funambol WM Client 2010-01-09 22:28:41 +00:00
Jörg Lehrke
3242e169cc More Funambol adjustments and workarounds 2010-01-09 18:04:21 +00:00
Jörg Lehrke
49823ecd7e Fix encoding issues; improvements for Funambol clients 2010-01-08 13:09:36 +00:00
Jörg Lehrke
d82ca7378b Fix recur_enddate during import/export 2010-01-05 18:06:07 +00:00
Jörg Lehrke
ac7424612e Calculate the EGw recur_enddate properly 2010-01-05 11:24:27 +00:00
Christian Binder
946ecb41b2 substract only one second from incoming whole day events because EGw stores whole day events with DTEND 23:59:59 2010-01-04 13:56:20 +00:00
Christian Binder
80f9969ee3 fixed wrong indents 2010-01-02 13:25:58 +00:00
Christian Binder
43190660a4 implemented different priority values for funambol/outlook clients since outlook does not support the RFC defined PRIORITY values, fixed some typos 2009-12-29 13:51:07 +00:00
Christian Binder
3546f1057d call groupdav::fix_series() really just for groupdav clients 2009-12-27 15:49:40 +00:00
Ralf Becker
dd0a5c1b13 Fixed CalDAV/GroupDAV to include all exceptions of a series in the
resource of the series master. Now the status of single recurrences of a
serie are send to the clients as (virtual) exceptions as Jaytrax&Joerg
implemented it already for SyncML.
The implementation is unfortunately a little different, as CalDAV
differs from SyncML and I dont know the SyncML part that well. Maybe we
can re-unify the code again together.
Tested so far with Tb3/Lightning1.0b and a little with iPhone.
Please let me know, if you run into problems with other clients.
2009-12-27 04:21:33 +00:00
Jörg Lehrke
d6da8d8980 Fix yearly recurrence issue for version 1.0 2009-12-06 18:04:08 +00:00
Jörg Lehrke
8f0bd9a5dc Fix recurrence UNTIL calculation 2009-12-04 15:38:23 +00:00
Jörg Lehrke
e7ec189ea4 Use ['egw_info']['server']['server_timezone'] to reset server timezone 2009-12-03 08:28:45 +00:00
Jörg Lehrke
dd92e60180 Use UID for find_content(); code cleanups 2009-12-01 10:24:55 +00:00
Jörg Lehrke
738726abf1 Adjust group attendee handling 2009-11-29 21:03:17 +00:00
Jörg Lehrke
a0e1a238dd Optimized SyncML memory footprint; fixes various filter issues 2009-11-29 14:03:45 +00:00
Christian Binder
96c5fc3184 quietened logging 2009-11-27 08:33:10 +00:00
Jörg Lehrke
3d93128777 Enforce configured device timezone during import 2009-11-27 06:47:21 +00:00
Jörg Lehrke
6a7b07e3c6 New PARTICIPANT/ORGANIZER schema 2009-11-26 18:36:19 +00:00
Christian Binder
8ae3b5f833 fixed empty RECURRENCE-ID on ical export 2009-11-23 13:03:35 +00:00
Jörg Lehrke
cb9ea723c6 Set VTIMEZONE DTSTART entries properly 2009-11-19 13:30:30 +00:00
Jörg Lehrke
1b20783041 Fix Yearly RRULE Issue with Funambol Outlook Sync Client 2009-11-19 11:52:41 +00:00
Jörg Lehrke
4088b81c5c Impoved support for recurrences if device timezone differs from event timezone 2009-11-19 10:13:17 +00:00
Jörg Lehrke
9e6d97f106 Fix VTZIMEZONE DTSTART Issue 2009-11-19 07:52:42 +00:00
Christian Binder
16538f4f9d use check_perms() on ical export and merge categories on import 2009-11-18 14:46:25 +00:00
Jörg Lehrke
86d648a995 Set event['tzid'] for clients using UTC timestamps 2009-11-16 17:28:34 +00:00
Ralf Becker
5d1fd4aedb "timezone of events in iCal class depend on $date_format parameter (depending on device type)" 2009-11-13 07:52:06 +00:00
Jörg Lehrke
db25947a38 Use new rrule iterator class for RRULE generation 2009-11-12 19:08:23 +00:00
Jörg Lehrke
014119f075 Add device specific timezone settings 2009-11-11 21:31:33 +00:00
Ralf Becker
9df8b0bdbf new static calendar_timezones::DateTimeZone($tzid) method returning a
DateTimeZone object resolving by PHP not supported Windows timezones
with their standard alias
2009-11-10 20:07:33 +00:00
Ralf Becker
85bf743434 "Using VTIMEZONE component from new calendar_timezones class (imported sqlite DB from Lighting) for exports and importing TZID from iCals.
Horde Code already uses VTIMEZONE component to return times in servertime, no need to change anything there."
2009-11-10 15:08:35 +00:00
Jörg Lehrke
7198ed861f make code more comprehensible 2009-11-06 15:44:04 +00:00
Jörg Lehrke
bacca46078 Fix Alarm Inport Issues 2009-11-03 16:31:07 +00:00
Jörg Lehrke
85a9a06a96 Only one VTIMEZONE per VCALENDAR; Export Alarms again 2009-10-30 21:39:19 +00:00
Jörg Lehrke
a87fc26aa7 Fix RRULE issue for vCal 1.0; Fix timestamps with TZ issue 2009-10-29 19:42:32 +00:00
Jörg Lehrke
6d3bf02d1c Pseudo recurrence exception handling hacks; vCal 1.0 extensions 2009-10-25 18:22:01 +00:00
Jörg Lehrke
a11565ec9c Fix VTIMEZONE RRULE issue and be more compliant with standard 2009-10-19 20:46:23 +00:00
Ralf Becker
a3c57c48b3 "fixed typo reported in bug #2302 - Error while imported iCal file (PHP Error)" 2009-10-12 15:44:52 +00:00
Jörg Lehrke
6f780041fa Fix VTIMEZONE handling 2009-10-09 18:20:13 +00:00
Christian Binder
49de506d6f also export servertime if event has no recur_enddate - it could be a weekly or monthly recurring event 2009-10-06 14:29:46 +00:00
Christian Binder
68dc2e4f47 also set date_format if servertime gets set - just for the case that it is used later 2009-10-06 13:20:41 +00:00
Christian Binder
14d4f08b36 added missing param date_format 2009-10-06 12:41:08 +00:00
Jörg Lehrke
1353ae511a Adds TZID/VTIMEZONE support for server timezone entries 2009-10-05 21:00:08 +00:00
Christian Binder
9621d17f28 make ical class ready to propagate a status only exception to a real exception. this is just successful if the user has ACL edit rights on the event - otherwise the propagation attempt gets ignored. additionaly added some logical fixes 2009-10-01 13:30:18 +00:00
Christian Binder
bbe301095e fixed alarm handling: dont touch / ignore alarms being set for all users or alarms of other users since most clients do not know specific owners for alarms 2009-09-23 08:08:37 +00:00
Christian Binder
5602cac698 complete rework of the ical import part: removed unclear 1:N relations, introduced get_event_info method which completely classifies incoming events first, removed code duplicates, re-organized importVCal() to have a more linear code structure and to make debugging easier in future. -- please forgive me if i may have introduced some bugs with that but its a huge change --" 2009-09-22 13:43:55 +00:00
Christian Binder
b3f5fc282b removed init of unused var minimum_uid_lenght in importVCal() 2009-08-26 12:14:41 +00:00
Jörg Lehrke
c902314499 Fixes user status update issue 2009-08-24 17:22:05 +00:00
Jörg Lehrke
babe8f056c * Adapted to new database schema with reference/recurrence
* Group invitation handling
* Fixes for pseudo recurrences
2009-08-23 19:26:14 +00:00
Christian Binder
45dfa1ab0d fix: new supported field "recurrence" was named "reference" 2009-08-17 10:34:22 +00:00
Ralf Becker
bb5511cc9f - methods to combine and split status, quantity and role
- $ignore_acl parameter for calendar_boupdate::delete()
- removed setting owner always as participant: owner is allowed to
  remove himself as participant from an event
  (owner only get's set, if there are no other participants in BO)
2009-08-06 11:29:05 +00:00
Ralf Becker
7742b606f8 "- storing and setting ROLE
- storing and setting resource quantity as X-EGROUPWARE-QUANTITY"
2009-08-04 17:37:49 +00:00
Ralf Becker
5aa62b71b9 "- first step of using new recurrence field
- fixed some wrong idention"
2009-07-28 08:58:39 +00:00
Nigel Vickers
7d2308bedf add switch based logging to default file /tmp/log-vcal or if set ['server']['temp_dir']./log-vcal 2009-07-24 14:18:57 +00:00
Ralf Becker
86db825cbf "more RECURRENCE-ID stuff:
- disabling it on import, as we cant overwrite a cal_id with a timestamp
- fixing it on export, finding the closest exception to return it
- using array_merge to merge virtual and real exceptions, as + overwrites numeric keys"
2009-07-17 12:08:45 +00:00
Ralf Becker
0e3f456fe1 "RECURRENCE-ID: $event['reference'] is a calendar_id, not a timestamp" 2009-07-17 10:15:22 +00:00
Jörg Lehrke
9f377914c9 fix recurrence exception issue 2009-07-16 19:42:50 +00:00
Ralf Becker
cb0fc5db82 - merged SyncML-1.2 branch with trunk:
svn merge -r 26935:HEAD ^/branches/SyncML-1.2/calendar .
- with the exception of class.calendar_uiforms.inc.php,
  as it was not updated with the latest changes from trunk
  and I'm not sure about the changes
--> needs further discussion, sorry :-(
svn revert inc/class.calendar_uiforms.inc.php
2009-07-15 20:35:56 +00:00
Klaus Leithoff
00c55151e3 fix for "Column 'account_id' in field list is ambiguous" ERROR while importing events 2nd.go 2009-07-09 08:32:18 +00:00
Klaus Leithoff
7edb16d35a fix for "Column 'account_id' in field list is ambiguous" ERROR while importing events 2009-07-09 08:10:29 +00:00
Ralf Becker
232252475f patch fixing many depricated functions (eg. posix regular expressions) and features, which fill up the error_log under php5.3 (and will no longer be available under php6).
Patch is mostly created by script in egroupware/doc/fix_depricated.php in separate commit.
I do NOT advice to apply this patch to a production system (it's commited to trunk!), as the automatic modified regular expressions have a good change to break something ...
2009-06-08 16:21:14 +00:00
Klaus Leithoff
085961d7e1 njv: calendar/groupdav work to improve groupdav compatibility and various sync proplems connected 2009-04-02 12:35:26 +00:00
Ralf Becker
fbf5586ce3 "fixed bug reported by Peter Goerzen: UID was not exported (which caused some automatic uid-generation in horde to kick in and messes up CalDAV/GroupDAV)" 2008-11-17 16:31:59 +00:00
Ralf Becker
1baa158195 Big SyncML patch from Philip Herbert <pherbert(at)knauber.de>:
- change the processing of slowsync, to use the content_map instead of
  trying to build a new one. This caused duplication issues on the
  client if multiple similar records where stored, because only the first
  one found in the server-db was matched, These duplicate entries at client
  side had no entry at serverside, so deleting the wrong one
  on the client (the content with a valid map entry) could cause
  unwanted data loss at server side, because it is impossible for the
  user to see what is a duplicate, and what is not.

see also: 
http://www.nabble.com/again---syncml-duplication-issue-to20333619s3741.html

- reenabled UID from syncml clients, because it was partly used this caused
  issues during SlowSync if the content was changed. 

- infolog, calendar if a uid is found in the provided data, allway try to
  find the corresponding content first   using only the UID, instead of
  using the content-id taken from content_map.

also fixed:

- a few fixes in ./notes
- creating an entry on the client that can not be imported,
  (Example, Nokia E Series Appointment without a Title)
  will no longer create an invalid content-map entry
  However, at client side this is still counted in the Protocol as
  Server-Add
2008-11-16 10:42:29 +00:00
Ralf Becker
6498abb3e3 "adding importing user to an event newly imported via iCal: without that an iCal which did not contain the eGroupware mail address of the user will be inaccessible" 2008-11-14 07:39:36 +00:00
Ralf Becker
19342d9119 "enclosing ATTENDEE CN parameter in double quotes, as it seems to be required by Outlook to correctly use non-ascii chars in attendee CN" 2008-11-12 15:21:21 +00:00
Ralf Becker
bc1b45f873 "fixed missing CHARSET for CN in ATTENDEE, reported by Hans-Juergen Tappe <tappe(at)hek.uni-karlsruhe.de> on the German list" 2008-11-12 13:52:38 +00:00
Ralf Becker
46943b0200 "fixed not working import of multiple iCals in one file" 2008-11-07 13:57:32 +00:00
Ralf Becker
43f860ba8f Reworked GroupDAV and iCal/vCard handler to set 'GroupDAV' as product
manufacturer and the recogniced GroupDAV client as product name.
This way we are able to handle different GroupDAV clients, as we
allready do with different SyncML clients.
Also removed the no longer needed code enabling the use of the real UID, 
as SyncML does no longer misuse the UID for it's GUID.
2008-11-03 09:36:20 +00:00
Ralf Becker
71edd1c938 Big patch from Philip Herbert (Knauber) modifying the SyncML code to no
longer use GUIDs containing eGW's install_id, as the information is
irrellevant for SyncML and cause doublications of entries if the
install_id changes.
I plan to have a new rc4 Wednesday or Thursday containing these changes.
2008-11-03 07:44:02 +00:00
Ralf Becker
3f760048c6 "fixed SQL error \"unknown column 'id'\" in CalDAV reported by Christoph Kaulich on the German list" 2008-11-01 10:37:53 +00:00
Ralf Becker
d76143310e "improved import of iCal, specially participants" 2008-10-22 09:32:14 +00:00
Ralf Becker
4a6dbe37fd "exporting whole day events with dates instead of times for DT{START|END}, as other clients fail to recognice them as such otherwise" 2008-10-05 07:56:50 +00:00
Ralf Becker
93ec854bf6 "Patch from Phillip Herbert from Knauber to support Nokia X-EPOCAGENDAENTRYTYPE' = 'EVENT'" 2008-09-03 17:13:54 +00:00
Ralf Becker
c86025cae3 formatting 2008-06-12 07:03:23 +00:00
Ralf Becker
25b1924665 no extra charset attributes in iCal for GroupDAV/CalDAV 2008-06-07 17:54:40 +00:00
Ralf Becker
f11875aad9 new class naming schema 2008-06-07 17:49:16 +00:00
Ralf Becker
ef700b0061 new class naming schema 2008-06-07 17:45:33 +00:00