Befox / cdav

Dolibarr module to access calendars and address book from CalDAV/CardDAV tools
GNU General Public License v3.0
47 stars 28 forks source link

Don't work on my server #1

Closed tdm31 closed 8 years ago

tdm31 commented 8 years ago

hi, thanks for your job, bur that don't work on my server

I try with dolibar 3.7 and 3.8 on debian server the links "url Cardav" appear but display a blank page the apache log display an error 500 and 410

jpfox commented 8 years ago

First, cdav uses SabreDAV, this library does not work if apache module dav is enabled, you can disable it globally with sudo a2dismod dav or by adding Dav Off option in your site <Directory> section.

Have you an error.log file with more details ?

You could active syslog module to have more details : https://wiki.dolibarr.org/index.php/Error_reporting

tdm31 commented 8 years ago

Cdav is not enable on my apache server

apache log when i activate the module

2015-11-01 09:47:20 DEBUG 10.0.0.28 sql=SELECT param, value FROM llx_user_param WHERE fk_user = 1 AND entity = 1 2015-11-01 09:47:20 DEBUG 10.0.0.28 User::getrights 2015-11-01 09:47:20 DEBUG 10.0.0.28 sql=SELECT r.module, r.perms, r.subperms FROM llx_user_rights as ur, llx_rights_def as r WHERE r.id = ur.fk_id AND r.entity IN (0,1) AND ur.fk_user= 1 AND r.perms IS NOT NULL 2015-11-01 09:47:20 DEBUG 10.0.0.28 User::getrights 2015-11-01 09:47:20 DEBUG 10.0.0.28 sql=SELECT r.module, r.perms, r.subperms FROM llx_usergroup_rights as gr, llx_usergroup_user as gu, llx_rights_def as r WHERE r.id = gr.fk_id AND r.entity = 1 AND gr.fk_usergroup = gu.fk_usergroup AND gu.fk_user = 1 AND r.perms IS NOT NULL 2015-11-01 09:47:20 INFO 10.0.0.28 --- Access to /cdav/cdavurls.php 2015-11-01 09:47:20 DEBUG 10.0.0.28 Menubase::menuLoad mymainmenu=companies myleftmenu=contacts type_user=0 menu_handler=eldy tabMenu size=0 2015-11-01 09:47:20 DEBUG 10.0.0.28 sql=SELECT m.rowid, m.type, m.module, m.fk_menu, m.fk_mainmenu, m.fk_leftmenu, m.url, m.titre, m.langs, m.perms, m.enabled, m.target, m.mainmenu, m.leftmenu, m.position FROM llx_menu as m WHERE m.entity IN (0,1) AND m.menu_handler IN ('eldy','all') AND m.usertype IN (0,2) ORDER BY m.position, m.rowid

apache log when try to access from mobile phone

[01/Nov/2015:10:36:54 +0100] "OPTIONS /cdav/server.php/addressbooks/stephane/default/ HTTP/1.1" 500 507 "-" "DAVdroid/0.9.0.4 (2015/11/01; dav4android) Android/4.1.2" 10.0.0.16 - - [01/Nov/2015:10:36:54 +0100] "PROPFIND /.well-known/caldav HTTP/1.1" 405 571 "-" "DAVdroid/0.9.0.4 (2015/11/01; dav4android) Android/4.1.2"

dolibar log --- Access to /cdav/server.php/addressbooks/stephane/default/ 2015-11-01 10:36:54 INFO 10.0.0.16 --- End access to /cdav/server.php/addressbooks/stephane/default/

the clients (davdroid and caldav-sync free) display he don't find any addressbook or calendar .

jpfox commented 8 years ago

OK, can you activate PHP error reporting to a file to grab error http://php.net/manual/en/errorfunc.configuration.php

tdm31 commented 8 years ago

error are already active and here is error i see in

Nov 1 11:41:34 apache apache2: PHP Fatal error: Can't use function return value in write context in /var/www/myvhost/htdocs/cdav/lib/cdav.lib.php on line 92

my php version is 5.4.45-0+deb7u1

jpfox commented 8 years ago

Ok, it due to your php version... I can't do modification directly in repository but you can replace line 92 in cdav/lib/cdav.lib.php : if($obj->percent==-1 && !empty(trim($obj->datep))) by if($obj->percent==-1 && trim($obj->datep)!="")

and on lines 116 and 124 : elseif(!empty(trim($obj->datep2))) by elseif(trim($obj->datep2)!="")

tdm31 commented 8 years ago

Yes !! I see my addressbooks instead of blank page and the connection with the client work. Merci beaucoup. Thanks a lot I will configure it on the 2 other Doli server

jpfox commented 8 years ago

https://github.com/Befox/cdav/commit/a9506288eb6ceb4d947967203df1d1c781b58819