Ralf Becker
24be2fa21d
* Calendar: fixed wrong time in iCal of notification, if notifying user is not in server TZ
...
we need to pass $event[id] so iCal class reads event again, as event is in user TZ, but iCal class expects server TZ!
2012-01-23 02:53:25 +00:00
Nathan Gray
e4efd1b7b9
Fix {{link/[appname]}} placeholder
2012-01-18 16:10:58 +00:00
Nathan Gray
b50ce5e768
Remove extra array, not needed for list view, and prevents proper iteration
2012-01-12 17:03:57 +00:00
Ralf Becker
94f555eca1
* Calendar/Resources: do NOT unselect currently selected calendars when selecting a resource category, eg. to choose a meeting room
2012-01-09 22:19:19 +00:00
Ralf Becker
fc96467cb3
* Calendar: showing now all open calendars in the owner-selection, not just accounts. Allows to close them from all views
...
r37698: for account-selection method "selectbox", make sure everything in $selected gets an option, as for the other methods
2012-01-09 22:15:28 +00:00
Ralf Becker
ecd6e7ecd1
* Addressbook: show calendar of contact(s) as list-view with date-filter "all" via context menu
...
r37667: ability to open nm_action=location in a given targetapp tab, plus documentation
2012-01-09 22:09:11 +00:00
Ralf Becker
24ac31ec70
* Calendar: button to close a single calendar if multiple calendars are shown (day, week and planner view)
...
r37672: formatting close button a little nicer / less visual obstructing
2012-01-09 22:00:56 +00:00
Ralf Becker
cbf2807997
* Calendar: new (forcable) user preference to notify external participants (non-EGroupware users), event owner has to set it, it is off by default, to keep the current behavior of not notifying externals
2012-01-09 21:53:48 +00:00
Nathan Gray
304e5971c2
Add mergeprint tag for links to a specified application: links/appname
2012-01-09 16:25:17 +00:00
Ralf Becker
cec9e39582
* Calendar/CalDAV: Add index for cal_modified and cal_user_modified to improve performance of ctag and etag generation on big installtions
...
Running this update is NOT required, calendar and CalDAV will continue working without, therefore I backported it to 11.1
2012-01-04 21:46:09 +00:00
Klaus Leithoff
b0e5edf555
silence error_log from calendar_bo triggered by statMessage
2011-12-23 11:25:49 +00:00
Nathan Gray
df4a6b99eb
Changed end date / duration to use (in order):
...
Due date, completed date or start + duration preference
2011-12-22 15:31:03 +00:00
Klaus Leithoff
65df488f5d
* calendar/esync: do not allow a minimum length of less then 1 for uid; esync: if no UID given, do not even try to fetch exceptions.
2011-12-22 14:46:00 +00:00
Nathan Gray
5c9cae68fe
Add ability to create calendar entries from infolog entries
2011-12-20 17:32:54 +00:00
Nathan Gray
2ac6626cdd
Add warnings
2011-12-20 17:03:05 +00:00
Klaus Leithoff
cc86326cb4
* calendar: allow to send a meeting request to all participants, add action to calendar event edit to choose between sending meeting requests or a mail with the ics file of an event attached.
2011-12-16 10:29:31 +00:00
Klaus Leithoff
1759838b91
* calendar/esync: active-sync does NOT want calendar owner as participant
2011-12-06 13:59:47 +00:00
Ralf Becker
fbe1856c5c
* CalDAV: fixed group-invitations got lost (urn:uuid url lost one char with each new import)
2011-11-24 14:37:45 +00:00
Ralf Becker
7efd0f6ff0
* Calendar: fixed groupmembers cant accept/reject group-invitations in listview via context-menu (error: failed because of insufficient rights!)
2011-11-21 14:26:16 +00:00
Ralf Becker
176e81cd1c
* ImportExport: allow to select "Old fixed definition" in preference for nextmatch export (disk icon)
2011-11-21 10:10:46 +00:00
Nathan Gray
e88c042901
Add custom fields to available fields and default export definition
2011-11-14 17:03:11 +00:00
Ralf Becker
e8f1143d6d
fixed fatal error: Cannot pass parameter 6 (of calendar_boupdate::update) by reference
2011-11-11 12:55:30 +00:00
Ralf Becker
92a1cf4354
fixed alarm on series got lost, if creating an exception
2011-11-11 12:47:04 +00:00
Ralf Becker
a25873da97
* Calendar: modified column position for overlapping events, allways leave some space on the left for drag-n-drop or clicking
2011-11-11 07:28:54 +00:00
Ralf Becker
e8fc68f0ce
fixed modifying an existing event with timezone different from default timezone of user to a whole-day event (no timezone allowed according to iCal rfc)
2011-11-10 18:48:26 +00:00
Ralf Becker
996d1e4ed7
* Calendar: fixed many issues when moving or modifiny (parts of a) recurring event (alarms, recurrance type, time)
2011-11-10 18:39:36 +00:00
Ralf Becker
f36655555f
always return an array, if an array is given as argument
2011-11-10 06:43:52 +00:00
Ralf Becker
67b243c377
max_user_modified for recurring events has to include all recurrences, otherwise we get a "412 Precondition Failed" in CalDAV, as it is part of the ETag
2011-11-09 17:54:20 +00:00
Nathan Gray
b12e7b6517
When exporting from list view, default selection options to listview settings
2011-11-09 15:52:16 +00:00
Ralf Becker
f303028f2f
* eSync: fix for not updated calender, contact, task on device if only description or note was changed or deleted
2011-11-09 13:37:37 +00:00
Ralf Becker
b7a2bb01d5
removed calendar-preference "color for Apple iCal", as it set a single color for all calendars you have access too, storing and returning color set by iCal (untested)
2011-11-09 13:25:19 +00:00
Ralf Becker
fa7a8c5bf1
* Calendar: fixed MyStylite bug #2434 : context menu could be used to invite yourself to any event you can read
2011-11-09 09:45:14 +00:00
Ralf Becker
460f6e57bd
- fixed calendar_ical::importVCal() to (again) return 0 on etag mis-match, as documented and return 412 Precondition Failed in that case
...
- Disabling Schedule-Tag handling completly, as current implementation seems to create too much trouble with iCal under OS X or iOS, which send If-Schedule-Tag-Match condition event for major updates, not just changing own status or alarms
2011-11-08 21:11:36 +00:00
Ralf Becker
f9e8d7312d
fixing r37108 calendar_timezone::DateTimeZone() returns a DateTimeZone not an egw_time object
2011-11-07 17:12:37 +00:00
Ralf Becker
80510b5412
* CalDAV/CardDAV: major rework fixing lots of bugs/incompatibilites and adding new features: eg. autocompletion of accounts and resources under iCal, searchable addressbook gateway for all addressbooks available
...
merged changes from Trunk up to r37094 from addressbook, calendar, infolog, phpgwapi, egw-pear and resources (only CalDAV/CardDAV related stuff of cause)
2011-11-06 09:40:33 +00:00
Klaus Leithoff
c7664f5850
* calendar/esync: handle error regarding not getting an egw_time object but no exception is thrown; may be php 5.2.x related. occurs when a NokiaE72 tries to open Outlook invitations
2011-11-03 14:22:54 +00:00
Nathan Gray
6da51ecbdb
* Add {{links}}, {{attachments}}, {{links_attachments}} placeholders for merging
2011-10-27 16:21:15 +00:00
Ralf Becker
dfa9c86982
* eSync/Calendar fixed "wrong" generation of AS timezone blobs from TZID
...
still some issues left with start- and endtime, might also be caused by wrong data on the device, but dont do much harm
2011-10-20 11:18:01 +00:00
Ralf Becker
5cd27bea86
fixed timezone alias update always reports one timezone update, event if it updated nothing
2011-10-11 16:12:40 +00:00
Ralf Becker
01f06f6b41
fixed wrong logic in alias update: windows timezone is added as alias for an existing tzid, value new tz_alias column is the id of the given tzid
2011-10-11 12:10:15 +00:00
Ralf Becker
f40634fe6a
* Calendar: added windows timezones to all installations (was added in calendar update 1.7.005, but not to new installs)
2011-10-07 05:09:08 +00:00
Ralf Becker
196f461de7
* Calendar: added windows timezones to all installations (was added in calendar update 1.7.005, but not to new installs)
2011-10-07 05:08:33 +00:00
Philip Herbert
9b8dccb16d
disable debug
2011-10-05 23:21:51 +00:00
Ralf Becker
e05ce4d614
enclosing etag in quotes, as most servers do
2011-10-05 08:15:24 +00:00
Ralf Becker
bedafe6c79
fixed "403 Forbidden" when a participant with a group invitation tried to delete the event from his calendar
2011-10-05 07:39:11 +00:00
Ralf Becker
23584253fd
not returning deleted entries for read, as they might have identical UID for caldav_name as a non-deleted entry and would therefore block access to these
2011-10-04 14:18:35 +00:00
Ralf Becker
0de2f3c527
fixed profind depth 0 directly on a resource contains name-part twice
2011-10-04 12:16:03 +00:00
Ralf Becker
288a88239b
we should not return an etag here, as we never store the PUT ical byte-by-byte
2011-10-03 15:48:24 +00:00
Ralf Becker
175197d7c0
* CalDAV: no METHOD:PUBLISH for CalDAV outside the inbox
2011-10-03 12:53:28 +00:00
Ralf Becker
58f4cc1405
* CalDAC fix for aCal Android client sending DTSTART+DURATION instead of DTSTART+DTEND
...
- for new events, allways add owner as participant. Users expect to participate too, if they invite further participants
2011-10-03 09:43:06 +00:00
Ralf Becker
50b50e2a5d
* CalDAV/GroupDAV: return empty collection, as iCal under iOS 5 had problems with returning "404 Not found" status
2011-09-30 12:53:48 +00:00
Ralf Becker
b11fa0302f
* CalDAV/GroupDAV: return empty collection, as iCal under iOS 5 had problems with returning "404 Not found" status
2011-09-30 12:52:40 +00:00
Ralf Becker
0a7b7e40c8
- improved principal-property-search report to support test=(allof|anyof) and match-type=(contains|starts-with) attributes used by iOS iCal to autocomplete participants
...
--> participants are - thanks to CalDAV scheduling - now setable for new event, thought searching for them does NOT yet work, no idea why ;-)
- added somehow missing calendar-query report to supported-report-set
2011-09-24 21:10:53 +00:00
Ralf Becker
3f830b2bff
- implemented principal-property-search report required for WebDAV ACL and used by Lightning to search for calendar-home-set
...
- had to implement a workaround for Lightning, as it wrongly interprets principal-property-search for calendar-home-set in the principal-collection-set
matching our *DAV root returning all principals, as all have a matching calendar-home-set, as NOT supporting CalDAV scheduling
--> search only current user's principal, when Lightning searches for calendar-home-set
- OPTIONS / return now calendar-auto-scheduling too, as Lightning only searches there, to check if server supports CalDAV scheduling
- fixed outbox freebusy request to cope with no X-CALENDARSERVER-MASK-UID and a single attendee
2011-09-23 12:04:21 +00:00
Ralf Becker
df1d9e81b2
- implemented regular CalDAV free-busy-query report
...
- fixed FBTYPE for tentative accepted invitations: BUSY-TENTATIVE
- fixed typo stalling outbox free-busy request
2011-09-22 19:49:01 +00:00
Ralf Becker
b5269738d7
read-free-busy, schedule-send and schedule-deliver privileges
2011-09-22 18:46:16 +00:00
Ralf Becker
c26fcffda7
first step for CalDAV scheduling
...
- principal reports scheduling-inbox-URL /<username>/inbox/ and scheduling-outbox-URL /<username>/outbox/
- outbox collection contains no events
- outbox correctly answers POST for freebusy information
- outbox respons to all other POST with "204 No Content", ignore client request to deliver invitations
- inbox collection contains events of unknown status (PARTSTAT=NEEDS-ACTION)
- inbox responds to DELETE with "200 Ok"
--> iCal under OS X now shows freebusy times :-)
(had to add "write-content" privilege for calendar collections user has edit rights for, to allow adding events)
2011-09-22 15:22:52 +00:00
Ralf Becker
1f39e5c562
- added WebDAV ACL props supported-privilege-set and current-user-privilege-set
...
+ currently only standard WebDAV privileges: read, read-current-user-privilege-set, write-content, bind and unbind used
+ they get only queried for collections, thought we dont report any write* on collections, as we dont allow to create calendars or change properties
- new groupdav::add_resource() method used to add all resources (incl. collections) to propfind or report requests
- improved autoindex to show nicely indented hierarchical properties
2011-09-21 20:08:21 +00:00
Ralf Becker
03ed1d3ddb
- refactored code to use a single add_collection method in groupdav class
...
--> app groupdav classes now get calling groupdav object as parameter
Had a quick test with iOS & OS X addressbook, calendar and with Lightning
2011-09-18 10:56:56 +00:00
Klaus Leithoff
55dbf20c33
* calendar/addressbook/importexport/merge-print: introduction of a static function to fetch the export limit, and normalize the possible output: bo_merge::getExportLimit; apply new function to bo_mergen, nextmatch_widget, addressbook, calendar and importexport; introduction of an calendar export limit; introduction of hook to provide appspecific export_limit
2011-09-16 13:23:15 +00:00
Klaus Leithoff
2d494997ab
rework of bo_merge::getExportLimit, apply to etemplate, importexport, addressbook, calendar
2011-09-16 13:03:46 +00:00
Klaus Leithoff
f616b34f58
API: introduce register_single_app_hook to be able to add or update one hook for an required app. register added/updated hooks with ->location; calendar and addressbook are using this to insert export_limit hook if not available. use app hook to fetch app specific export limit with import_export side_menu additions too
2011-09-15 16:53:20 +00:00
Klaus Leithoff
fc3fc728a4
register_hooks, without hook array, does not reregister all app hooks, so use register_all_hooks instead
2011-09-15 15:03:25 +00:00
Klaus Leithoff
d9905d3fb4
calendar/addressbook/API: introduce hook to fetch the export_limit to be applied for an app; introduce method to test if a specific hook exists for an application; fetch the export_limit via hook where appropriate
2011-09-15 14:46:56 +00:00
Klaus Leithoff
70a7026915
* merge_print/calendar: control the availability of mergeprint and csv export, if the export_limit is set to ->no<- and the user in question is not exempted from export_limit restrictions
2011-09-14 13:09:13 +00:00
Klaus Leithoff
36e3a1b8ce
add missing translations for export_limit feature of calendar, correcting translation strings for export_limit warnings
2011-09-14 10:27:53 +00:00
Klaus Leithoff
74b41ec99a
fix bug regarding merge_print with export_limit set in calendar, as calendar may pass a search query instead of a list of ids (this is the reason, why the test within bo_merge on export_limit is not working as expected)
2011-09-13 15:41:31 +00:00
Klaus Leithoff
d52c72207c
* calendar/importexport/addressbook: calendar introduce new config option to set app specific export_limit; calendar csv export: use enumerate for exporting events as csv; bo_merge: introduce new helper functions to get and check export-limit; addressbook: use new helper functions
2011-09-13 09:05:33 +00:00
Ralf Becker
1b05b82e20
Do NOT move start- and end-date, to the earliest exception, as they will NOT be found in CalDAV or ActiveSync, because
...
we only recognice recuring events which start before or in the current timerange and end in or after it or have no end-date.
--> give an error message, as it is a debuging/support nightmare, if this gets silently fixed when reading events.
No idea how this situation (exceptions before startdate) can be created anyway.
2011-09-12 11:05:51 +00:00
Ralf Becker
0b96631cd4
Do NOT move start- and end-date, to the earliest exception, as they will NOT be found in CalDAV or ActiveSync, because
...
we only recognice recuring events which start before or in the current timerange and end in or after it or have no end-date.
--> give an error message, as it is a debuging/support nightmare, if this gets silently fixed when reading events.
No idea how this situation (exceptions before startdate) can be created anyway.
2011-09-12 11:04:48 +00:00
Ralf Becker
975a8ade09
* API/Calendar: allow to link to accounts and allow to select accounts as participants by searching them like contacts
2011-09-07 16:47:08 +00:00
Ralf Becker
b633044a46
* API/Calendar: allow to link to accounts and allow to select accounts as participants by searching them like contacts
2011-09-07 14:47:51 +00:00
Klaus Leithoff
7ab7b51bc8
fix typo and missing param for uilist::get_rows
2011-09-05 07:12:57 +00:00
Klaus Leithoff
f48ab37187
fix typo and missing param for uilist::get_rows
2011-09-05 07:01:08 +00:00
Klaus Leithoff
a3b17caa5f
* impportexport/document merge: better control of exportlimits, you are now able to exempt groups or users from any exportlimits set (backport of nathans work, with enhancements from ralf)
2011-09-01 14:32:26 +00:00
Klaus Leithoff
1d8034e17b
code cleanup: as bo_merge::is_export_limit_excepted checks for ->is Admin<- already
2011-08-30 15:13:58 +00:00
Klaus Leithoff
10411b539d
adapting missed export_limit_excepted processing to static bo_merge::is_export_limit_excepted
2011-08-30 14:49:49 +00:00
Klaus Leithoff
b9096e6291
* calendar/holidays: fix charset for japanese holidays
2011-08-22 14:32:25 +00:00
Klaus Leithoff
69a930ab67
* calendar/holidays: fix charset for japanese holidays
2011-08-22 14:29:22 +00:00
Nathan Gray
16bafa78b8
Implement export restriction exception for given users/groups in apps
2011-08-17 15:38:56 +00:00
Ralf Becker
3ecb55ad78
* Calendar: not using freebusy rights for searching calendar, as it would allow to probe for event contents
...
- optimised private event filter for searching to not query private grants (again) from database
2011-08-16 10:21:22 +00:00
Ralf Becker
8996f45e9e
* Calendar: not using freebusy rights for searching calendar, as it would allow to probe for event contents
...
- optimised private event filter for searching to not query private grants (again) from database
2011-08-16 10:20:40 +00:00
Ralf Becker
33e273f0f4
fixed Warning: DateTime::modify(): Failed to parse time string (1234.5 second) at position 7 (s): The timezone could not be found in the database, caused by second fraction
2011-08-11 08:41:54 +00:00
Ralf Becker
d2a87d2de4
fixed Warning: DateTime::modify(): Failed to parse time string (1234.5 second) at position 7 (s): The timezone could not be found in the database, caused by second fraction
2011-08-11 08:41:13 +00:00
Ralf Becker
87bd4bf2f2
quietend PHP Warning: explode() expects parameter 2 to be string, array given on line 313
2011-08-11 07:41:50 +00:00
Ralf Becker
378526a648
quietend PHP Warning: explode() expects parameter 2 to be string, array given on line 313
2011-08-11 07:41:18 +00:00
Ralf Becker
6fe6b4b797
disable permanent debugLog in StatMessage
2011-08-10 07:35:41 +00:00
Ralf Becker
b18cd023a2
* Loa language translation Dr. from Vimontha KHIEOVONGPHACHANH <kvimontha-AT-yahoo.com>
2011-08-09 07:23:55 +00:00
Ralf Becker
17a41103d5
Loa language translation from vimontha <kvimontha@yahoo.com>
2011-08-09 06:12:25 +00:00
Ralf Becker
09b4ba803f
* Calendar: fixed various issues with history in calendar: id display, unecessary stuff loged, ...
2011-08-04 14:03:43 +00:00
Ralf Becker
3819816248
* Calendar: fixed various issues with history in calendar: id display, unecessary stuff loged, ...
2011-08-04 14:00:15 +00:00
Ralf Becker
d9120468be
* CalDAV: fixed and enabled iterator again, to minimize resource usage, fix for mystylite bug #1942
...
it was disabled because sql query was broken, because we did not use MIN(cal_end) multiple events per cal_id were returned
2011-08-03 16:15:33 +00:00
Ralf Becker
17f6dad7eb
* CalDAV: fixed and enabled iterator again, to minimize resource usage, fix for mystylite bug #1942
...
it was disabled because sql query was broken, because we did not use MIN(cal_end) multiple events per cal_id were returned
2011-08-03 16:13:56 +00:00
Ralf Becker
d628f11250
- clearify wording "display holidays or birthdays as events *in dayview*", as it currently only works in dayview and might take to much space for other views
...
- fixed holidays as events to show no participants and not as private
2011-08-03 15:13:11 +00:00
Ralf Becker
5f415cafc2
- clearify wording "display holidays or birthdays as events *in dayview*", as it currently only works in dayview and might take to much space for other views
...
- fixed holidays as events to show no participants and not as private
2011-08-03 15:12:07 +00:00
Ralf Becker
641aed0f20
* Calendar: show status set for the whole series at recurrences too, unless they have an individual status
...
removed previous participants call now completly, as the above changes archive the same thing, without enumerating all recurrences to the database
2011-08-03 12:37:08 +00:00
Ralf Becker
9b8921116b
* Calendar: show status set for the whole series at recurrences too, unless they have an individual status
...
removed previous participants call now completly, as the above changes archive the same thing, without enumerating all recurrences to the database
2011-08-03 12:35:42 +00:00
Ralf Becker
a0f155ff6f
fixed PHP fatal error: can not pass parameter 6 by reference
2011-08-02 15:56:02 +00:00
Ralf Becker
74ddade8a0
fixed PHP fatal error: can not pass parameter 6 by reference
2011-08-02 15:55:20 +00:00
Ralf Becker
b186e79362
fixing r35871: status was not explicitly set to false (only to true) and therefore not editable
2011-08-01 16:37:47 +00:00