I'm trying to get working this plugin with a Davical server (already working with thunderbird & sogo extension). But when I synchronize an existing addressbook I get the following message:
v0.5.1 | carddav_server_id: 8 | No CardDAV XML-Element found! The CardDAV-Server seems to have no contacts
And the addressbook has 5 contacts
<?xml version="1.0" encoding="UTF-8"?>
<last_modified>mar, 07 Aug 2012 18:52:11 GMT</last_modified>
the PROPFIND method doesn't seem to return any contact, and only the collection info.
Davical 1.1.1 in other server (Nginx 1.2, PHP 5.4)
I modified the get method of carddav_backend and now it's working. It downloads all the contacts from the collection.
< $response = $this->query($this->url, 'PROPFIND');
> $content = '<?xml version="1.0" encoding="utf-8" ?><D:sync-collection xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:carddav"><D:sync-token></D:sync-token><D:prop><D:getcontenttype/><D:getetag/><D:allprop/><C:address-data><C:allprop/></C:address-data></D:prop><C:filter/></D:sync-collection>';
> $content_type = 'application/xml';
> $response = $this->query($this->url, 'REPORT', $content, $content_type);
Great! I had the same problem. This fixes it.
question: do the three lines with the ">" replace the line with "$response = $this->query($this->url, 'PROPFIND');" in carddav_backend.php?
Yes, the 3 lines with ">" replace the line with "<"
Yes, this fixes it for me, how come this hasn't been fixed after all this time? Could this be a Davical specific fix/issue?