Florian Schlichting
4b7abbbd83
drop default $position argument from BuildXMLTree everywhere (awl!22)
2023-02-26 22:10:34 +01:00
Andrew Ruthven
48efbb272b
Fix Fatal PHP Error if Depth is more than 1.
...
Merge request was proposed by xhess on GitLab, but the commit
had no content. I've solved it, possibly the same way.
For the initial commit:
Executing the second example at https://wiki.davical.org/index.php?title=PROPFIND
The "Depth: 2" header is the problem. Setting the depth header larger than 1
causes the function "compare_val_with_re" to be defined again. Now checking if
the function has already been defined fixes the problem.
2018-11-12 19:32:34 +13:00
Florian Schlichting
a6b286ab98
caldav-proxy 5.2: calendar-proxy-read/write are themselves principal resources
...
Fixes the CalDAV/calendaruserproxy.xml test.
2017-09-19 21:19:02 +02:00
Scott Balneaves
8052111635
modify hide_older_than logic to allow through recurring events ( fixes #103 , !36 )
2017-04-07 15:08:10 +02:00
Florian Schlichting
eb7f2edc0c
eliminate trailing whitespace, expand tabs
2016-12-30 08:52:44 +01:00
Louis Duruflé
00eb3c8e49
HttpDateFormat is actually in AwlDBDialect
2015-10-03 00:11:41 +02:00
Ján Máté
c32a288385
added $c->disable_caldav_proxy_propfind_collections option - it is very useful if your client not uses the "calendar-proxy-read" and "calendar-proxy-write" resources returned by PROPFIND for each principal ( http://svn.calendarserver.org/repository/calendarserver/CalendarServer/trunk/doc/Extensions/caldav-proxy.txt ). The main reason to disable these resources is that it is EXTREMELY expensive to create them (especially on servers with lot of users who share their collections) and most clients will never use them (or use this functionality by explicitly asking for these resources using expand-property REPORT, which will work regardness the value of this option)
...
supported values:
false/unset => keep these resource active
true => never show these resources
array('User-Agent'=>'#regex1#', 'X-Client'=>'#regex2#') => if a client sends "User-Agent" header which matches the regex1 OR "X-Client" header which matches regex2 then do not show these resources
2014-05-14 13:58:10 +02:00
Ján Máté
6229409717
added $c->hide_bound configuration options - it is very useful if you use iOS (which not supports delegation) in combination with other software which supports degation ... simply use case is: bind all collections you want to see on iOS (emulation of delegation) and then hide these collections from other clients with real delegation support
...
supported values:
false/unset => always show bound collections
true => never show bound collections
array('User-Agent'=>'#regex1#', 'X-Client'=>'#regex2#') => if a client sends "User-Agent" header which matches the regex1 OR "X-Client" header which matches regex2 then all bound collections are hidden
2014-05-14 13:46:00 +02:00
Ján Máté
7be6aee280
added functions for regex comparison (see next commits)
2014-05-14 13:37:51 +02:00
Ján Máté
c2b6be3b65
fix for $c->hide_TODO processing and user-agent extension
...
new option: if set to PHP regex string then hide_TODO is enabled if the client
user-agent string matches the regex for example:
$c->hide_TODO='#^iOS.*dataaccessd.*#';
will hide all todos from non-owner/non-admin users for iOS devices
2013-10-25 12:16:27 +13:00
Ján Máté
16f617b637
fix of major todo synchronization issue if $c->hide_older_than option is set
...
todo without start date was never synced
2013-10-25 12:16:27 +13:00
Andrew McMillan
58bbe1c8c3
Change to read all calendars and then discard inaccessible ones
2013-10-15 23:43:35 +13:00
Andrew McMillan
350bb08445
The SQL date formatting constants have moved.
2013-09-26 16:09:13 +02:00
Andrew McMillan
acc6c719f7
Simple changes for new XML processing.
2012-04-30 14:13:03 +12:00
Andrew McMillan
f55f8fbee3
Allow complete disabling of handling for Apple's old calendar-proxy.
...
We'll make this a default behaviour after 2012 is over and remove it
sometime after that.
2012-03-22 13:52:20 +13:00
Andrew McMillan
7e5b6a28b6
We need to coalesce the last_modified data as well as the created.
2011-10-05 16:59:32 +02:00
Andrew McMillan
13ce4c147a
Add support for writing local scheduling requests on PUT.
...
In the new Scheduling Extensions for CalDAV the server is expected
to construct iCalendar METHOD:REQUEST invitations and put them into
the scheduling inbox for each (local) attendee. This patch does
that, and hopefully breaks the back of implementing the full
scheduling extensions.
2011-09-07 23:40:28 +12:00
Rob Ostensen
a6ff1760f2
make refreshing actually work
2011-08-25 14:17:36 +12:00
Andrew McMillan
595e724426
Fix bug in handling bound resources with DAVResource changes.
...
Signed-off-by: Andrew McMillan <andrew@morphoss.com>
2011-01-04 18:46:51 +13:00
Andrew McMillan
ac190c7277
Fix bugs in previous commit. Plus regression tests for it.
...
Signed-off-by: Andrew McMillan <andrew@morphoss.com>
2010-12-07 09:39:16 +13:00
Andrew McMillan
9b079d7549
Handle empty PROPFIND, don't blow up on invalid XML.
...
Signed-off-by: Andrew McMillan <andrew@morphoss.com>
2010-12-07 09:28:12 +13:00
Andrew McMillan
76768719c9
Handle a level of indirection in Binds of binds.
2010-09-02 23:04:35 +12:00
Andrew McMillan
83059270d9
Wrap calendar-specific things for PROPFIND in an IsCalendar() test.
2010-08-31 19:22:32 +12:00
Andrew McMillan
e4e2a1fd47
Explicitly specify permissions matching.
2010-06-29 23:51:17 +12:00
Andrew McMillan
adb1f949ac
Check for existence of target resource before we check for READ perm.
2010-06-28 08:41:46 +12:00
Andrew McMillan
b55e69399f
Switch to put caldav_data.* in result list after calendar_item.*
2010-04-16 12:47:18 +12:00
Andrew McMillan
cd154199b8
Initialise the parent_container when constructing from a row.
2010-03-24 23:41:23 +13:00
Andrew McMillan
4d674c4f92
Getting bindings to work as seamlessly as possible.
2010-03-15 00:31:16 +13:00
Andrew McMillan
0a1b3c2d59
All regression tests passing again with BIND for PROPFIND.
2010-03-14 12:16:12 +13:00
Andrew McMillan
ed055722e9
Working BIND and PROPFIND of bound resources.
2010-03-14 00:22:43 +13:00
Andrew McMillan
57920da746
Switch from AllowedTo() to HavePrivilegeTo() to support tickets.
2010-03-12 18:29:46 +13:00
Andrew McMillan
2255e1fa6a
Use NeedPrivilege() method to check privileges.
2010-03-06 23:27:49 +13:00
Andrew McMillan
9460803f71
Add an option to restrict visible contents to a limited date range.
...
This patch adds ability to hide old events from Caldav clients. New
configuration option $c->hide_older_than accepts an integer number
of days. For example, setting $c->hide_older_than=90 hides all
events with "end date" older than 90 days. The main purpose of this
patch is allowing to use Sunbird with more than 500 Caldav events
without removing these events from calendar. Without this patch
the Sunbird slows down and load calendars extremely slowly (up to
10 min. for 1800 events).
2010-02-28 11:19:36 +13:00
Andrew McMillan
429940f4d9
The <allprop> can be at the top level, not within the <prop>.
2010-02-26 13:45:30 +13:00
Andrew McMillan
1eb677de16
Make some of those unused functions really not be used!
2009-12-21 21:41:37 +13:00
Andrew McMillan
19199d5f86
Replaced the old get_permissions() call with the new permissions model.
2009-12-21 13:04:25 +13:00
Andrew McMillan
e5b1139d86
New PROPFIND implementation.
2009-11-12 00:43:09 +13:00
Andrew McMillan
c83873c32a
Tidying up the corpse...
2009-11-12 00:36:16 +13:00
Andrew McMillan
dd0d152cb4
Correct <creationdate> format & group-member* responses.
2009-11-12 00:17:45 +13:00
Andrew McMillan
4aced6ff32
Move proxy tests to use accessors.
2009-11-08 20:30:26 +13:00
Andrew McMillan
e957d07927
Be as lazy as possible about doing that horrible proxy query.
2009-11-07 21:53:23 +13:00
Andrew McMillan
1ad6713dfc
Correct response for schedule-inbox.
2009-11-02 14:23:22 +13:00
Andrew McMillan
5b99bb68e0
Improving response on non-existent resources.
2009-11-02 11:47:50 +13:00
Andrew McMillan
871e6841f1
We will only return supported-calendar-component-set on a calendar for now.
2009-11-02 10:02:50 +13:00
Andrew McMillan
379747180a
Add support for supported-method-set & supported-report-set.
2009-11-02 10:02:18 +13:00
Andrew McMillan
9e1b4170a7
Only return an ordered set if so configured.
2009-10-06 14:37:58 +13:00
Andrew McMillan
f2bb76091a
Don't return scheduling inbox/outbox in Depth 1 propfind on principal.
2009-09-25 22:14:45 +12:00
Andrew McMillan
b78c4d6d12
Allow for namespaced properties. Not all are in the DAV space.
2009-09-11 23:45:45 +12:00
Andrew McMillan
48eb93eaec
Restyle to use ' where possible as performance tweak.
2009-09-11 11:04:59 +12:00
Andrew McMillan
36ef7160f5
Make the base URL in a PROPFIND reflect the actual requested URL.
2009-09-10 23:19:53 +12:00