1719 Commits

Author SHA1 Message Date
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é
92f48f38cd various cheduling related fixes (there are still few remaining bugs) 2014-05-14 13:34:06 +02:00
Ján Máté
822e81644d expand-property repord - prevent infinite recursion and recursion to the object itself (non-recursive getting request URL properties) 2014-05-14 13:33:36 +02:00
Ján Máté
31af435cec various cheduling related fixes (there are still few remaining bugs) 2014-05-14 13:32:48 +02:00
Ján Máté
7a05f2b7d7 fixed uninitialized principal object for calendar-proxy-* queries 2014-04-27 17:26:35 +02:00
Ján Máté
08cc16074d Awl interface related changes 2014-04-07 12:28:19 +02:00
Ján Máté
9df80fbde1 comment out lines related to external invitation (the Email class is still undefined) 2014-04-07 12:27:58 +02:00
Ján Máté
b3c8a4ad0f awl interface related changes 2014-04-07 12:26:39 +02:00
Ján Máté
1330892852 fixed missing semicolons in drivers_ldap.php 2014-03-25 19:24:49 +01:00
Ján Máté
6b37b2b422 fixed masking of confidential event components 2014-03-24 01:52:52 +01: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
Ján Máté
64372ba529 Extend $c->default_collections - adding 'calendar_components' and 'default_properties'
'calendar_components' sets the
'urn:ietf:params:xml:ns:caldav:supported-calendar-component-set' property for
the calendar collection (used to distinguish between different type of calendar
collections, for example: todo and event calendars) the value must be a
non-empty array; allowed values: 'VEVENT', 'VTODO', 'VJOURNAL', 'VTIMEZONE',
'VFREEBUSY', 'VPOLL', 'VAVAILABILITY'
for example:
  array('VEVENT')
  array('VTODO')
  array('VEVENT', 'VTODO')
  null or undefined => all default calendar components are supported - see
    $c->default_calendar_components
NOTE: if you want to change the value of this property later, you need to do
it directly in the database ("property" table) or in the client software!

'default_properties' sets custom properties for the collection in the
"property" table the value must be a non-empty associative array of
key => value pairs (key = property name, value = property value) for example
(set the calendar color property used by Apple and other clients):
  'default_properties' => array('http://apple.com/ns/ical/:calendar-color'=>'#ff0000'),
   null or undefined   => no property is stored in the database
NOTE: if you want to change the value of this property later, you need to do
it directly in the database ("property" table) or in the client software!
2013-10-25 12:16:27 +13:00
Ján Máté
fd6b10d3e2 Prevent processing of collections from inactive principals
e.g. inactive principal collections are not returned if you use clients with
"delegation" support.
2013-10-25 12:16:27 +13:00
Matthias Beyer
8ab19de1fe Added dbg_error_log() calls for error msgs
If the ldap driver is not valid, the error messages were not printed.
There was just "Couldn't contact LDAP server for authentication" - But
why?

This commit adds a print loop for all messages from the global
$c->messages message array.
2013-10-25 12:16:19 +13:00
Jason Alavaliant
495257bebb add fix for the OSX Contacts.app: 2013-10-25 12:16:08 +13:00
Matthias Beyer
b732dcaeb3 Only set the cached instance if driver is valid
As I could see at other locations in the code, the ldap driver instance
can be invalid. And if the instance is invalid, the getStaticLdap()
function gets called again. Caching would prevent the function from
retrying to initiate the ldapDrivers object.

This commit adds conditional caching: only if the ldap driver instance is
valid, the object gets cached. This ensures that a retry with this function
would really try to create a new ldapDrivers object and not simply
return the (invalid) cached one.
2013-10-24 17:04:36 +13:00
Matthias Beyer
40c87435c1 Instance caching added
There was already a variable to cache the ldap driver instance, and a
check if this variable was already set was there, too! But there was no
code to return the cached instance if the function gets called twice!

Maybe this was simply forgotten...
2013-10-24 17:04:23 +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
e6b502e71a Minor restructuring. 2013-09-27 16:29:14 +02:00
Andrew McMillan
3e73a8da7b Debugging and small amounts of fixing. 2013-09-26 16:10:02 +02:00
Andrew McMillan
1141a43089 Fixing and debugging. 2013-09-26 16:09:36 +02:00
Andrew McMillan
350bb08445 The SQL date formatting constants have moved. 2013-09-26 16:09:13 +02:00
Andrew McMillan
d0fffe490a Set the default timezone to the database as well as for PHP. 2013-09-26 14:24:08 +02:00
Andrew McMillan
f074f214d0 Freebusy should use vComponent rather than the deprecated iCalComponent 2013-09-24 15:43:00 +02:00
Jason Alavaliant
72dc5b1f39 fix the append box when importing collections 2013-09-02 15:02:47 +12:00
Jason Alavaliant
2f27d181f0 fix for CLASS attribute problem (CONFIDENTIAL value) and invalid processing of ->hide_alarm configuration option: 2013-09-02 14:54:12 +12:00
Christoph Anton Mitterer
35e471013b support Apache’s REDIRECT_REMOTE_USER CGI env var
* In places where the CGI variable REMOTE_USER is read, support alternatively
  REDIRECT_REMOTE_USER, which is used by the Apache HTTPD Server instead, when a
  redirect was used.

Note: This alone is not enough yet, to fully support it in DAViCal. An analogous
      change (commit 29ddd89baaf65bda2560e51665a2e761abef4147) is necessary in
      AWL.
2013-09-02 14:53:33 +12:00
Christoph Anton Mitterer
82757beba4 RFC compliant CGI AUTH_TYPE usage
* Handle the content of the CGI AUTH_TYPE variable case-insensitively as defined
  by RFC 3875 Section 4.1.1.
2013-09-02 14:53:12 +12:00
Christoph Anton Mitterer
c092a6153e make debug files pathnames more FHS compliant
* Changed the pathnames of the debug files to be a bit more FHS compliant.
2013-09-02 14:40:46 +12:00
Christoph Anton Mitterer
4ae44558c7 update addresses to the new canonical location
* Updated all addresses of the canonical git upstream repository and the issue
  tracker to the new ones.

Conflicts:
	po/de.po
	po/es_AR.po
	po/es_ES.po
	po/es_MX.po
	po/es_VE.po
	po/et.po
	po/fr.po
	po/hu.po
	po/it.po
	po/ja.po
	po/nb_NO.po
	po/nl.po
	po/pl.po
	po/pt_BR.po
	po/pt_PT.po
	po/ru.po
	po/sv.po
2013-09-02 14:40:33 +12:00
Christoph Anton Mitterer
8e60bb3124 set line endings of most text files to LF
* Changed the end-of-line encodings of all non-Windows-related and non-autogenerated text files to use UNIX LF (lots of them had mixed LF/CRLF).

Conflicts:
	inc/caldav-PUT-functions.php
2013-09-02 14:37:23 +12:00
Matthias
92c15bed64 Fixed schedule reply handling for missing organizer 2013-09-02 14:27:40 +12:00
fbiete@gmail.com
b97ec56851 CardDAV support for search contains, starts-with, ends-with, equals 2013-09-02 14:27:20 +12:00
Andrew McMillan
8e899ff0e0 Sometimes principal_id can be false. 2013-05-31 09:34:24 +12:00
Andrew McMillan
bc5edf09cf Handle the ?after=(duration|date) syntax when receiving a PUT of a calendar. 2013-05-29 12:50:50 +12:00
Andrew McMillan
56ee5a62fa Fix very buggy conversion of duration to seconds.
Obviously this was never tested before.
2013-05-29 12:50:02 +12:00
Andrew McMillan
04ad1ac742 Fix typo. 2013-05-28 12:54:44 +12:00
Andrew McMillan
5200c6d996 Allow adding an 'after=YYYY-MM-DD' or 'after=P72D' parameter
Only applies to PUT of a collection.  This will mean that only events
after that date (or absolute duration prior to today).  All repeating
events will still be included.
2013-05-23 13:37:00 +12:00
Andrew McMillan
115676613d Only certain specific namespaces actually have database columns. 2013-05-23 13:28:54 +12:00
Andrew McMillan
8c1b780ff1 Remove unecessary debug message on normal behaviour. 2013-04-11 07:32:32 +12:00
Andrew McMillan
b1eb2bdc5a Content-Type header should be 'charset' not 'encoding'. 2013-02-16 22:23:51 +13:00
Andrew McMillan
584a52cb70 Quick workaround for iOS6 supported-calendar-component-set issue.
Adds a $c->default_calendar_components array of (VEVENT,VTODO,...)
2012-09-20 23:37:22 +12:00
Andrew McMillan
20e3e2d91a Fix unassigned variable. 2012-09-20 23:34:36 +12:00
Andrew McMillan
6695b46160 Avoid unassigned variable warning. 2012-09-20 23:34:18 +12:00
Andrew McMillan
121f02069f Fix UID handling. 2012-09-20 23:34:09 +12:00
Andrew McMillan
0a435d4f22 Fix debugging to error log. 2012-09-20 23:33:52 +12:00
Andrew McMillan
eb4464aaec Some debugging messages. 2012-08-09 14:10:09 +12:00