mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-11-23 00:13:35 +01:00
Add CardDAV support for Apple's latest Addressbook.app
This commit is contained in:
parent
334a8c6fc3
commit
50ff02da4d
@ -136,8 +136,8 @@ class groupdav extends HTTP_WebDAV_Server
|
|||||||
case 'davkit': // iCal app in OS X 10.6 created wrong request, if full url given
|
case 'davkit': // iCal app in OS X 10.6 created wrong request, if full url given
|
||||||
$this->client_require_href_as_url = false;
|
$this->client_require_href_as_url = false;
|
||||||
break;
|
break;
|
||||||
case 'cfnetwork':
|
case 'cfnetwork_old':
|
||||||
$this->crrnd = true; // Apple Addressbook.app does not cope with namespace redundancy
|
$this->crrnd = true; // Older Apple Addressbook.app does not cope with namespace redundancy
|
||||||
}
|
}
|
||||||
parent::HTTP_WebDAV_Server();
|
parent::HTTP_WebDAV_Server();
|
||||||
|
|
||||||
|
@ -329,7 +329,7 @@ abstract class groupdav_handler
|
|||||||
$user_agent = strtolower($_SERVER['HTTP_USER_AGENT']);
|
$user_agent = strtolower($_SERVER['HTTP_USER_AGENT']);
|
||||||
foreach(array(
|
foreach(array(
|
||||||
'davkit' => 'davkit', // Apple iCal
|
'davkit' => 'davkit', // Apple iCal
|
||||||
'cfnetwork' => 'cfnetwork', // Apple Addressbook
|
'cfnetwork' => 'cfnetwork', // Apple Addressbook
|
||||||
'bionicmessage.net' => 'funambol', // funambol GroupDAV connector from bionicmessage.net
|
'bionicmessage.net' => 'funambol', // funambol GroupDAV connector from bionicmessage.net
|
||||||
'zideone' => 'zideone', // zideone outlook plugin
|
'zideone' => 'zideone', // zideone outlook plugin
|
||||||
'lightning' => 'lightning', // Lighting (SOGo connector for addressbook)
|
'lightning' => 'lightning', // Lighting (SOGo connector for addressbook)
|
||||||
@ -347,6 +347,17 @@ abstract class groupdav_handler
|
|||||||
{
|
{
|
||||||
error_log("Unrecogniced GroupDAV client: HTTP_USER_AGENT='$_SERVER[HTTP_USER_AGENT]'!");
|
error_log("Unrecogniced GroupDAV client: HTTP_USER_AGENT='$_SERVER[HTTP_USER_AGENT]'!");
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
switch ($agent)
|
||||||
|
{
|
||||||
|
case 'cfnetwork':
|
||||||
|
if (preg_match('/address%20book\/([0-9.]+)/', $user_agent, $matches))
|
||||||
|
{
|
||||||
|
if ((int)$matches[1] < 868) $agent .= '_old';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return $agent;
|
return $agent;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user