Commit Graph

1520 Commits

Author SHA1 Message Date
Jörg Lehrke
191d0c7fd5 Fix 'search for series master' issue 2010-03-09 09:28:46 +00:00
Jörg Lehrke
0978663ada Fix Funambol STATUS issue 2010-03-08 13:54:13 +00:00
Jörg Lehrke
20aab1b6f2 Handle failures in event2rrule gracefully 2010-03-08 06:54:02 +00:00
Nathan Gray
3a09d2072f Fix for cast from Anthony Messina 2010-03-07 22:09:48 +00:00
Jörg Lehrke
a8804a44ef GroupDAV updates 2010-03-06 23:06:43 +00:00
Nathan Gray
79824c2e0c Use cast only for Postgres, as in projectmanager 2010-03-06 15:49:59 +00:00
Nathan Gray
11183a763d Cast sync_contentid to unsigned int 2010-03-06 02:40:57 +00:00
Nathan Gray
cb5054f2e4 Add an option to keep deleted events, only an admin can purge them 2010-03-05 20:01:44 +00:00
Klaus Leithoff
a410651f6f changing a bit regarding the logic of the new feature (be notified about own changes) 2010-03-03 12:14:10 +00:00
Klaus Leithoff
f093aeff24 feature to enable to be notified of events you created/modified/deleted yourself; That is most helpful if you get a notification eMail with the ics attached, and thus be able to import the event somewhere else (another EGroupware/Outlook/...) 2010-03-03 11:59:55 +00:00
Christian Binder
b39c0affba revert nonsense commit from jaytraxx 2010-03-02 18:21:50 +00:00
Christian Binder
fcd731a00b prevent iterating on empty array 2010-03-02 18:01:41 +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
Christian Binder
8211aef3ff fixed wrong series event end times for whole day events when events occur or span over a daylight saving date, fixed typos 2010-02-25 17:05:24 +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
e362a5b451 Use category names for history-log 2010-02-19 17:42:02 +00:00
Jörg Lehrke
ce7324f12f Fix daywise search 2010-02-19 17:10:15 +00:00
Jörg Lehrke
21ccdd5f28 Fix various synchronization issues (SyncML & CalDAV) 2010-02-17 13:29:28 +00:00
Nathan Gray
de4a0e9239 Add history logging to calendar 2010-02-12 20:18:45 +00:00
Jörg Lehrke
41f587d584 Fix wrong classification in get_event_info() again 2010-02-11 21:04:10 +00:00
Jörg Lehrke
65c06844e5 Fix wrong classification in get_event_info() and UID handling for CalDAV 2010-02-11 20:50:35 +00:00
Jörg Lehrke
52ea4512ca Improve find_event() again 2010-02-11 07:33:32 +00:00
Jörg Lehrke
ad79f404e9 Fix recurring event issue 2010-02-10 19:47:39 +00:00
Klaus Leithoff
ed7f3a764e Free/Busy handling for groups and recources; Groups: if a group allows only free/busy to its users, then participation does not mean a lot. Resources: if grant is free/busy only explicit recources rights are not to be regarded 2010-02-10 12:31:34 +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
Hans-Jürgen Tappe
b712cc0480 $ts += DAY_s in a 'for' loop does not work for daylight savings in week view
because the day is longer than DAY_s: Fullday events will be added twice.
2010-02-07 14:37:27 +00:00
Ralf Becker
936c636ffd display upload failed (because post_max_size of webserver exceeded) message from etemplate, could be nicer but way better then before 2010-02-05 03:34:17 +00:00
Jörg Lehrke
75746226a4 Use egw_time for InfoLog, tracking backend and Tracker 2010-02-04 12:08:03 +00:00
Jörg Lehrke
da35c68b97 Fix occurrence count for recurring events again :-( 2010-02-03 15:57:44 +00:00
Jörg Lehrke
b596935291 Fixes for get_event_info() and enhancements for find_event() 2010-02-03 12:24:42 +00:00
Jörg Lehrke
8f71452859 Fix occurrence count for recurring events 2010-02-03 10:41:44 +00:00
Klaus Leithoff
f9a3ab52dc only do the integration query, if currentapp is calendar, because of performance issues thereof (addressbook fetches the last calendar event(, which fetchs the infologs)) 2010-02-02 13:29:51 +00:00
Klaus Leithoff
37b190e82e fixed position of tooltip did not fix the problem intended, and had unwanted sideeffects 2010-02-02 11:35:13 +00:00
Klaus Leithoff
995940eeb5 small improvements regarding the tooltip behavior for calendar 2010-02-02 11:23:11 +00:00
Klaus Leithoff
6e258109d8 as you can now see other apps in calendar, you must make sure you read only true calendar events for recurring dates, participants and customfields 2010-02-01 10:35:05 +00:00
Ralf Becker
25c29211f5 adapting for changed categories class 2010-01-30 23:54:08 +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
Ralf Becker
cc848debf2 disable integration for GroupDAV, SyncML, ... 2010-01-24 03:50:40 +00:00
Ralf Becker
2a4e0a3f3e make long tooltips scrollable and remove double call to html::tooltips 2010-01-24 03:19:59 +00:00
Christian Binder
7c7be4d31a Prevent the GUI from propagating a series exception to a series master. 2010-01-23 12:43:35 +00:00
Christian Binder
90dfe0a989 moved delete message to the right place (edit; not view). Prevent changing of fundamental values of an event series which would affect the recur_exception dates. 2010-01-23 10:40:44 +00:00
Christian Binder
42ceb277ac fixed typo 2010-01-23 09:53:58 +00:00
Christian Binder
98fe270524 fixed catching value from non-existing var 2010-01-23 09:53:38 +00:00
Christian Binder
3a0cf6bc29 delete exceptions too if a series of events get deleted by the GUI to avoid orphaned events. Same behaviour like we already have in future 1.6.003 2010-01-22 19:49:37 +00:00
Christian Binder
fb16385a8d method get_related should only return the ids 2010-01-22 19:47:32 +00:00
Christian Binder
a92a3b4a7b fixed typo 2010-01-22 19:45:25 +00:00
Ralf Becker
890125cab5 A few more change for the new integration interface, probably not the
last ...
2010-01-21 23:36:05 +00:00
Ralf Becker
12e5f2b218 allow calendar integration to supply participants and icons 2010-01-21 03:00:53 +00:00
Ralf Becker
74383ecb15 fixed warning if tagWholeDayOnTop($dayEvents) is called with no array, eg. false because no events found 2010-01-20 23:21:00 +00:00
Ralf Becker
8c1e245925 hook to supply further union queries for calendar display 2010-01-19 22:20:44 +00:00
Ralf Becker
810539ba9d sitemgr module for (yearly) planner 2010-01-19 22:17:01 +00:00
Ralf Becker
a04bae4fd3 fixed class, for birthdays 2010-01-17 03:59:50 +00:00
Ralf Becker
816634a490 more work on yearly planner:
- month with less then 31 days: fixed scale, display filler
- marking special days like, weekends, today, holidays
- added navigation (next/previous month/year)
2010-01-17 02:03:11 +00:00
Christian Binder
c32beca725 fixed a typo 2010-01-15 08:49:36 +00:00
Christian Binder
5c29be0ed1 read event start and end times if not given from the caller to avoid broken recurrences 2010-01-15 08:44:21 +00:00
Ralf Becker
793aab00b0 small fix for events lasting more then 2 month, eg. holidays ;-) 2010-01-15 04:08:10 +00:00
Ralf Becker
fad791eabd first version of a yearly planner 2010-01-15 03:53:12 +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
bce9456486 Fix vCal 1.0 RRULE issues again :-O 2010-01-12 18:52:29 +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
Christian Binder
fc63d67fb9 invalid the cache if saved_states get updated, otherwise changed states will not be saved correctly in some cases 2010-01-07 10:41:51 +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
Nathan Gray
e532ee0944 Implement new link hook view_list, to be able to be taken to a list of entries 2009-12-08 22:41:49 +00:00
Nathan Gray
ac14a5a1fd Implement options so link_query() can be limited 2009-12-08 22:36:43 +00:00
Ralf Becker
dd55355195 "fixed several small problems in new invitation and category acl" 2009-12-07 13:31:51 +00:00
Ralf Becker
60f72a9605 "fixed wrong default for referer (used if UA does not send one)" 2009-12-07 13:29:14 +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
Ralf Becker
8a9392c681 fixed problem with blanks in account_id of owner parameter 2009-12-04 10:22:33 +00:00
Ralf Becker
44b15c1775 Category based ACL to limit adding of a certain category or changing the
status of a participant (included moving the event), 
eg. to implement a restricted holiday calendar
*** not yet fully tested ***
2009-12-03 18:24:19 +00:00
Ralf Becker
5066c5c3b7 docu update 2009-12-03 18:20:07 +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
Stefan Becker
2a1d7079ad delete space, that translations work fine again 2009-11-30 13:53:21 +00:00
Jörg Lehrke
738726abf1 Adjust group attendee handling 2009-11-29 21:03:17 +00:00
Jörg Lehrke
3fa506f24a Change calendar filter 'all' to include 'owner'; typo in get_recurrences() 2009-11-29 21:02:15 +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
Christian Binder
98575180c5 give calendar owner the CHAIR role if we have ADD ACLs for the owners calendar 2009-11-27 08:04:29 +00:00
Jörg Lehrke
3d93128777 Enforce configured device timezone during import 2009-11-27 06:47:21 +00:00
Jörg Lehrke
43c5373b4d Fix event recur_interval mismatch issue 2009-11-27 06:46:32 +00:00
Jörg Lehrke
0f77f7e802 Fix role handling in get_recurrences() 2009-11-26 20:21:16 +00:00
Jörg Lehrke
6a7b07e3c6 New PARTICIPANT/ORGANIZER schema 2009-11-26 18:36:19 +00:00
Ralf Becker
0e60f6ac29 NOT clear timezone for private events (causes exception in calendar list
view)
2009-11-26 10:27:46 +00:00
Christian Binder
5ce294aa5c calendar GUI classes now use centralized method in categories class to check for category permissions 2009-11-26 08:28:06 +00:00
Ralf Becker
d53b681f21 - reworked referer handling to allow calling from other apps and not
changing back to calendar
- allow to specify custom template for event edit
2009-11-25 20:16:41 +00:00
Christian Binder
8e63887331 respect category permissions in calendar gui, unified var name of categories object 2009-11-25 12:58:09 +00:00
Christian Binder
a7c2b81b85 moved declaration of categories var to bo class 2009-11-25 12:55:59 +00:00
Ralf Becker
9726ed19fc - fixed typo calling not existing check_acl instead of check_acl_invite
- fixed check_acl_invite to work with no acl set too
2009-11-24 13:13:41 +00:00
Christian Binder
ddb0f86257 check if array is present before iterating it 2009-11-23 13:11:18 +00:00
Christian Binder
8ae3b5f833 fixed empty RECURRENCE-ID on ical export 2009-11-23 13:03:35 +00:00
Jörg Lehrke
ed5799b519 Fix SIFE issues 2009-11-22 17:48:51 +00:00
Ralf Becker
71ef04effc added multiple week view to icons 2009-11-22 14:01:48 +00:00
Ralf Becker
55fc673dc5 - new configurable invitation ACL: Require an ACL grant to invite other
users and groups:
  * No: Every user can invite other users and groups (default and old
    behavior)
  * Groups: other users can allways be invited, only groups require an invite_grant
  * Users + groups: inviting both allways requires an invite grant
  One need to keep in mind, that setting an invitation ACL via a group,
  gives each groupmember the right to invite the group / create a group
  event. So the last option propable only works, if users manage
  invitations grants on their own, or admin only sets it in small working
  groups, where every member is allowed to invite the whole group.
  --> calendar backend code removes participants a user is not allowed
      to invite
- new "only groupevents" filter, showing only real groupenvents not
  events of groupmembers (added tooltips to explain filters)
2009-11-19 18:56:04 +00:00
Christian Binder
e76d659cac applied category preserve on import also to SIF classes 2009-11-19 15:30:53 +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
Ralf Becker
91e694e79d Calendar UI improvments:
- show status of participants in border style of event
  + solid:  all participants accepted
  + dotted: all participants answered, but not all accepted
  + dashed: not all participants answered
- mark invitations (of current user, not calendar selected)
  + white background color (not category based color)
  + show blue questionmark icon in event header
2009-11-18 13:58:01 +00:00
Jörg Lehrke
86d648a995 Set event['tzid'] for clients using UTC timestamps 2009-11-16 17:28:34 +00:00
Ralf Becker
003420713b "fixed typo" 2009-11-14 09:13:37 +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
Ralf Becker
d1f233d141 "human readable string representation of rrule:
- added timezone (if different from user timezone)
- moved monthly rule to first argument in brackets"
2009-11-12 19:39:46 +00:00
Ralf Becker
b7c5dd63dc "recalculate recurences, if timezone of a recuring event changes
(it would be nice, if there's a simple method to find out if two different timezones switch at identical times, eg. Europe/Berlin and Europe/Paris do so, so we can avoid the recalculation)"
2009-11-12 19:11:27 +00:00
Jörg Lehrke
db25947a38 Use new rrule iterator class for RRULE generation 2009-11-12 19:08:23 +00:00
Ralf Becker
b307d2a5cf "using new rrule iterator to calculate recurrences
--> still need to implement new monthly last day/week rules in iCal class"
2009-11-12 10:11:23 +00:00
Ralf Becker
e7a6f37af8 "- changed $interval parameter to default to 1, if < 1
- fixed wrong name for recur_enddate"
2009-11-12 09:31:42 +00:00
Jörg Lehrke
014119f075 Add device specific timezone settings 2009-11-11 21:31:33 +00:00
Ralf Becker
a4176448f0 "New recurance rule iterator:
- Implemented two new monthly rrules: last day of month and last weekday (eg. workday) of month
- The constructor accepts times only as DateTime (or decendents like egw_date) to work timezone-correct.
- The timezone of the event is determined by timezone of the startime, other times get converted to that timezone.
- There's a static factory method calendar_rrule::event2rrule(array $event,$usertime=true), which converts an event read by calendar_bo::read() or calendar_bo::search() to a rrule iterator.
- The rrule iterator object can be casted to string, to get a human readable describtion of the rrule.
- There's an interactive test-form, if the class get's called directly: http://localhost/egroupware/calendar/inc/class.calendar_rrule.inc.php
--> next step will be to use the rrule iterator in calendar_bo::insert_all_repetions() to calculate the recurences"
2009-11-11 20:38:16 +00:00
Ralf Becker
5e24cc0c9b "UTC is treated specially: it's implicitly mapped to tz_id=-1 (to be able to store it for events), but calendar_ical creates NO VTIMEZONE component for it." 2009-11-10 20:38:00 +00:00
Ralf Becker
aa90d987c1 "fix: csv export is not always exporting custom fields" 2009-11-10 20:18:35 +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
4865854281 Added aliases for Windows timezone to standard TZID's 2009-11-10 19:37:27 +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
Ralf Becker
ddfcdfff06 allow EGroupware users to select only timezones, for which we have a VTIMEZONE component (I think the others are only unofficial aliases, not included in our database) 2009-11-09 09:00:53 +00:00
Ralf Becker
3de5e87288 "properly restoring user enviroment, after notifications send: spezially timezone" 2009-11-07 12:09:12 +00:00
Jörg Lehrke
7198ed861f make code more comprehensible 2009-11-06 15:44:04 +00:00
Christian Binder
1fac8112a9 fixed a very small typo :-) 2009-11-04 21:16:08 +00:00
Ralf Becker
4e9120ecf0 New tz_id column in egw_cal storing id into egw_cal_timezones
Please note: timestamps in egw_cal* tables are in server-time,
tz_id / timezone is only used to (re-)calculate recurrences and to
export in iCals (NOT yet implemented)
2009-11-04 15:00:08 +00:00
Christian Binder
f3a21aec7b make alarm content array really empty if all alarms have been stripped out due to ACL issues - otherwise one empty row will be displayed in form 2009-11-04 09:41:19 +00:00
Ralf Becker
01ecab32bc "fixed typo, thanks to jaytraxx" 2009-11-04 08:06:45 +00:00
Ralf Becker
28518afcbf "quietening diagnostics in search" 2009-11-04 07:57:55 +00:00
Ralf Becker
e9e7ad77b6 "setting tzid from user prefs for new entries" 2009-11-04 07:56:00 +00:00
Jörg Lehrke
bacca46078 Fix Alarm Inport Issues 2009-11-03 16:31:07 +00:00
Ralf Becker
54f32ae08a "fixed sql error after switching on custom fields column" 2009-11-03 16:13:45 +00:00
Ralf Becker
867636861e Added calendar table for timezones:
- timezone data is imported from SQLite DB from Thunderbird Lighting 1.0pre
- contains iCal VTIMEZONE component
- also contains not yet used latitude and longitude for timezone
- methods to convert between TZID string, nummeric tz_id and VTIMEZONE
  iCal component
--> preparation to store timezone information for each events
    (using tz_id as foreing key into egw_cal_timezones table)
2009-10-31 14:47:16 +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
Christian Binder
b2a3bf96a0 improved privacy on conflicting events - only check ACLs for invited participants and not all participant ACLs from conflicting event 2009-10-29 09:25:54 +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
60a7f69b57 Enable pseudo recurrence exception handling hacks 2009-10-25 18:20:58 +00:00
Jörg Lehrke
2eed0b9ddc Fix comment 2009-10-25 18:20:00 +00:00
Christian Binder
e3074ac9dc re-implemented implicit EGW_ACL_PRIVATE grant for group invitations - removed unneeded error logging 2009-10-23 07:51:07 +00:00
Ralf Becker
9850e07dd2 "weekday starts pref contained only monday" 2009-10-22 16:55:09 +00:00
Ralf Becker
7d89d8866d "fixed calendar csv-export:
- was only exporting 15 events (num_rows not forwarded to bo)
- participants contained html for status icon"
2009-10-22 13:41:44 +00:00
Jörg Lehrke
d0028ffc31 Improve readability 2009-10-19 20:50:17 +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
20e655c466 Default and forced preferences for nearly all apps 2009-10-19 17:04:11 +00:00
Ralf Becker
1fa1b92a56 docu update 2009-10-18 12:59:12 +00:00
Ralf Becker
5408924afb All EGroupware apps can now set default and forced preferences on
installation time --> nice user experience and cleaner look (by hiding
exotic prefs by focing them to a usual value):
- settings returned from settings hook can contain values for keys
  'default' or 'forced'
- if settings hook require part of api or application, which are not
  available during installation time: use a method hook (instead of
  an old $app/inc/hook_settings.inc.php file), and check if
  $hook_param['setup'] is true
- default prefs created so far in setup/admin_account.php got removed
- common prefs in preferences_hooks::settings() got reworked to set
  default and forced prefs
- calendar prefs in calendar_hooks::settings() got reworked to set
  default and forced prefs
--> I will rework prefs of all our (default) applications according to a
best practice list of Stylite consultants
2009-10-18 12:57:30 +00:00
Ralf Becker
fe6c8fd226 also add extended (textual) information, if ical is selected for notifications 2009-10-18 12:46:18 +00:00
Ralf Becker
4f69a5d1b0 using references to loop of items in profind and some cleanups 2009-10-16 08:36:28 +00:00
Ralf Becker
ff91aa6223 - fixed setting of roles
- automatically adding owner as chair
2009-10-13 09:00:01 +00:00
Ralf Becker
867f5d650d default params for calendar_so::combine_status(,=1,='REQ-PARTICIPANT') 2009-10-13 08:58:54 +00:00
Ralf Becker
d6cf835680 missing translation of role 2009-10-13 08:58:06 +00:00
Ralf Becker
9d50eb121d disabled debug-message and halfway fixed rules 2009-10-12 21:26:11 +00:00
Ralf Becker
0548cf5770 - added roles to UI
- enabling again resource booking without direct booking permission
  (status is then unknown, not accepted)
2009-10-12 19:16:42 +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
Ralf Becker
e3c468361d "stop calendar to update prefs on each request (do it only on change)" 2009-10-12 09:34:56 +00:00
Ralf Becker
4e21b766b9 - reworked old browser class to use have only static methods
--> recogniced it's so old and dusty, it does not make sense any more
--> moved content_header() method to html class
- fixed calls of browser->content_header to use html::content_header
  instead
2009-10-11 11:37:46 +00:00
Jörg Lehrke
6f780041fa Fix VTIMEZONE handling 2009-10-09 18:20:13 +00:00
Ralf Becker
ab9c9d21b6 New egw_time class used to implement correct timezone handling for
calendar, plus a first calendar implemenation.

This implementation just replaces following calendar_bo methods:
- date2ts($date,$user2server=False)
- date2array($date,$server2user=False)
- date2string($date,$server2user=False,$format='Ymd')
- format_date($date,$format='')
which static methods from egw_time.

If your server is in same timezone as the user, you should experience no
difference. As a small test, you can switch to an other timezone (eg.
UTC) to recognice on a weekly repeating event (which still repeats on
equal server time!) that it moves by one hour when daylight saving
changes. This switching to a TZ with different daylight saving rules,
was not working before.

Happy testing :-)
2009-10-07 13:29:06 +00:00
Jörg Lehrke
6312a087e3 Fix participants() deleted attendee issue, again 2009-10-07 04:23:42 +00:00
Jörg Lehrke
7f07102630 Fix participants() deleted attendee issue 2009-10-06 23:30:05 +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
Ralf Becker
04d48a677a Implemented display of custom fields in list-view
ToDo: implement search, sort and filtering by them
2009-10-03 07:32:05 +00:00
Ralf Becker
cc91687826 "fixed print without edit rights" 2009-10-01 19:21:37 +00:00
Ralf Becker
d77f7998af "added missing check if recur-endtime is before start, thanks to Hans-Juergen" 2009-10-01 19:16:38 +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
Ralf Becker
c38acb88d5 New filter for calendar based on participant status:
- Not rejected
- Accepted
- Invitations
- Tentative
- Rejected
- Owner too: display also events you own, not only ones you participate
- All incl. rejected
- Hide private infos: as usual
--> filter is stored in the user prefs (survives logouts)
--> old "show events you rejected" preference got removed
Also added a hook allowing applications supplying resources to modify
calendar search with SQL.
2009-09-29 19:58:51 +00:00
Ralf Becker
f855b57683 "make storing of cf's aware of arrays
Thanks to Hans-Jürgen Tappe"
2009-09-27 07:59:01 +00:00
Jörg Lehrke
327bd79662 Improved find_event() for propper pseudo recurrence exception handling during Slow Syncs 2009-09-24 22:29:22 +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
Ralf Becker
ff0f2dcbbe run wrong values in error message through htmlspecialchars() 2009-09-21 06:51:05 +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
faa51609ae user messages adjusted again. another attempt to make it clear for the user whats happening with event series and single occurrences of the event - if someone finds a better solution please edit 2009-08-17 21:15:40 +00:00
Christian Binder
1d5b6b6828 prevent privileged user from pressing "save" or "apply" if just a status of a single recurrence was changed - otherwise a real exception will be created 2009-08-17 20:05:46 +00:00
Christian Binder
2db8bd6c9c complete rework of participants() method. The only purpose of this method is now to add or delete participants - NOT to overwrite stati. Added a new param "add_only" to have the possibility to check for the existence of a single participant in the egw_cal_user db and add this participant if needed. This is used for e.g. group invitations where a default set of stati does no primary exist for the user. 2009-08-17 14:45:42 +00:00
Christian Binder
1793a546e3 give a response to the user on how many occurrences have been changed. Display the correct participant status depending if a single occurrence or a whole event series is displayed. 2009-08-17 14:38:18 +00:00
Christian Binder
45dfa1ab0d fix: new supported field "recurrence" was named "reference" 2009-08-17 10:34:22 +00:00
Christian Binder
77de24e563 manually insert or truncate the recurrences when changing enddate. recurrences rebuild (and stati reset) is now minimized to the following cases: move startdate/enddate, change recur_type, change recur_interval 2009-08-10 09:24:39 +00:00
Ralf Becker
da981bb02f "fixed problem reported in bug #2202 and on the devel list: Database Error when modifying the time of a calendar event
wrong SQL (UPDATE with ORDER BY) was introduce in SyncML-1.2 patch, no idea what the idea behind was ..."
2009-08-09 07:51:27 +00:00
Ralf Becker
0a1a7f4637 some more role related fixes: updating participants, if quantity or role changes 2009-08-07 10:20:58 +00:00
Christian Binder
a41aceaaae fixing wrong recurrence value: value should always be set to the effective date of the recurrence 2009-08-07 09:26:11 +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
c29ab01e8d - added ability to store participant roles to calendar backend,
currently not settable via GUI, but GUI leaves them untouched
- showing quantity for resources in brackets behind resource name
- docu and formatting updates all over the place
2009-08-04 17:14:16 +00:00
Klaus Leithoff
4a7c8737bb calendar integration from H.J.Tappe Listview/Multiple Weekview, to show Calendar events in sitemanager sites. Simple Demo http://213.183.76.121/TrunkWebSeite/?category_id=45; Some documentation of abilities and howto available with egroupware.org Tracker Patches Sitemgr #1991, 1993 and 1994 2009-08-03 09:51:35 +00:00
Jörg Lehrke
79b1279028 Fixes Export of Yearly Recurring Events and eGW Coding Standards 2009-07-30 20:52:13 +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
841aef5769 "fixed typo (in commented code) phpgwpai" 2009-07-24 10:34:20 +00:00
Ralf Becker
560f18bacd - added new colums cal_creator, cal_created for easier deleting of
doublicates from failed sync
- added cal_recurrences timestamp for exceptions (ts of original
  recurrence), for existing exceptions update script uses
  the closest recur_exception date/time for it
- using uid of original series for new recurrence exceptions,
  update script does NOT update the uid's of existing exceptions
- displaying (maybe temporary) these data in the recurrence tab
2009-07-23 16:14:22 +00:00
Christian Binder
5b263e23eb removed the "all future" field from participants states. Instead added uniform behaviour with existing event handling when editing a single recurrence or all recurrences. The message being displayed when editing a single recurrence read only is just meant as a proposal. Stylite usability PROs, please adjust this to whatever you want to. 2009-07-22 15:38:58 +00:00
Jörg Lehrke
7b6da8320a Fix SIF Parser again 2009-07-20 19:38:12 +00:00
Jörg Lehrke
71dfd3b2bb Fix SIF Parser 2009-07-18 22:36:44 +00:00
Jörg Lehrke
3fdb693e35 Fix whole day events 2009-07-18 12:40:58 +00:00
Christian Binder
3d1cb839ce so class STEP2: re-insert recurrences for deleted exceptions manually to avoid the forced rebuild of all recurrences and states 2009-07-17 17:16:34 +00:00
Christian Binder
e77ed49566 so class STEP1: reverted wrong recurrence rebuild with $max. fixed not working move() method for egw_cal_user. fixed participant status orphans 2009-07-17 14:49:19 +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
81a4097818 removed depricated assignment by reference 2009-07-17 11:29:45 +00:00
Ralf Becker
d3e2130c25 removed depricated assignment by reference 2009-07-17 11:29:15 +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
Ralf Becker
8dc163f04f some modifications to get iPhone working with EGroupware 2009-07-14 19:51:03 +00:00
Klaus Leithoff
1ac7c459c3 fix for lost owner selection in manage_states 2009-07-09 09:50:47 +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
8f4960f9b4 "fixed messed up indention" 2009-07-08 10:29:06 +00:00
Ralf Becker
1e58b525d1 "fixed messed up indention" 2009-07-08 10:22:11 +00:00
Klaus Leithoff
234bd6dba6 fixing calender empty resource problem (add event, edit participants) 2009-07-02 11:26:52 +00:00
Ralf Becker
53e7c66f51 "fixed group invitations got changed to regular invitations, after inviting a second group" 2009-06-18 13:21:05 +00:00
Stefan Becker
ca6164f5ce fixed with klaus the Group initation behavior, Readaccess you can also invite participants, but you can only change the status, if you have edit rights 2009-06-18 12:08:37 +00:00
Stefan Becker
78ce775f17 freebussy ACL added into calender. Now if you only give that right, you will see, that the time is blocked without a read right of user or group. But will see everything as private 2009-06-09 12:16:15 +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
Ralf Becker
772c9e57e8 "docu update" 2009-05-06 09:11:37 +00:00
Ralf Becker
272817b1c7 "added cols and append parameter from calendar_so::search to calendar_bo::search too" 2009-05-04 22:52:48 +00:00
Ralf Becker
2845873bae - docu update
- 2 new (optional) parameters for calendar_so::search()
2009-05-04 22:39:27 +00:00
Ralf Becker
0275b183dd "small fix of last commit for new (not already saved) events" 2009-04-29 14:31:58 +00:00
Ralf Becker
a3adbcecd6 fixed freetimesearch, which failed to work with new default etemplate requests stored directly in the form, using the new ajax_submit() function of etemplate 2009-04-29 14:17:46 +00:00
Ralf Becker
b31aa4ae62 need to include API's common_functions to use check_load_extension 2009-04-28 12:48:27 +00:00
Ralf Becker
9e3c1df37a "bugfixes for sidebox menu under prefs or admin:
- do NOT process the $_REQUEST vars
- if user changes selectboxes, go to default calendar view"
2009-04-20 15:44:24 +00:00
Ralf Becker
aca05a32e3 using new check_load_extension function 2009-04-20 12:43:44 +00:00
Ralf Becker
bbcb856b77 "fixed not correctly translated holidays downloaded from egroupware.org
(charset was not recogniced because of HTTP headers before charset line)"
2009-04-09 07:13:01 +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
9d55dfa69e "fixed not working status change of participants of type email ('e')" 2009-03-24 08:06:05 +00:00
Ralf Becker
18372ab45e "fixed not working multiget report (caused by .ics extension of calendar ressources)" 2009-03-20 08:57:17 +00:00
Ralf Becker
b587bab7d1 "other docu update and removed an unnecessary (doublicate) condition" 2009-03-20 08:17:54 +00:00
Ralf Becker
f5015cf6e8 "fixed wrong class-name for $this->so" 2009-03-20 07:55:22 +00:00
Klaus Leithoff
38bf424a25 speeding up search, by using a view to retrieve the participants 2009-03-16 13:50:03 +00:00
Klaus Leithoff
29a622e641 handling mailing events: dont add groupmembers if they already rejected the event, or are the current user 2009-03-05 15:52:57 +00:00
Klaus Leithoff
6e0d963eb7 handling double-mailing to participants by checking the mailadress list before adding 2009-03-05 15:18:40 +00:00