Menu

#5677 CalDAV server

Parent Category:
DPCalendar
Category:
Misc
Last Updated:
Allon Moritz, Tuesday, 02 May 2023 15:49
Created:
Wednesday, 24 January 2018 10:22
Hits:
5182

This feature is part of the DPCalendar Standard subscription.
SubscribePHP 7.4PHP 8Joomla 3.10Joomla 4.4Joomla 5

Introduction

CalDAV is an Internet standard allowing a client to access scheduling information on a remote server. DPCalendar is shipped with a built in CalDAV server. This means you can manage your events from your preferred event organizer app like Outlook, Thunderbird or iCal from Apple. Nowadays smartphones come with CalDAV app's too. In iOS it is natively integrated, there is no specific app needed. On Android there are dozens of apps, we from Digital Peak recommend DAVx5. They ensure that our CalDAV server works flawless in their app.

Note: If you want to integrate an external CalDAV server, you need to use the CalDAV plugin not the DPCalendar CalDAV server.

CalDAV url

In your CalDAV application you can login with your Joomla credentials and as calendar url you can use an url with the following schema:

http(s)://{{joomla-site-url}}/components/com_dpcalendar/caldav.php/calendars/{{username}}/dp-{{calid}}

  • {{joomla-site-url}}
    Replace this with your website URL.
  • {{username}}
    Replace this with the user name of the person registered to the site.
  • {{cal-id}}
    Replace this with a number - open the DPCalendar component > calendars, the ID is the number to the far right of the calendar name.

Note: Basic authentication needs to be activated on the server.

iOS support

For iOS devices you have to add the CalDAV url like (with trailing slash!):

http(s)://{{joomla-site-url}}/components/com_dpcalendar/caldav.php/principals/{{username}}/

Your iPad or iPhone will then discover all the calendars automatically.

Integration of an external DPCalendar installation

It is also possible to integrate a DPCalendar installation into another Joomla site with DPCalendar installed trough the CalDAV server.

Lets use an example that we want to integrate the events from site a.com into b.com. On b.com in the back end in the plugin manager you need to open the DPCalendar - CalDAV plugin and import the calendars by hitting the import button. As host you need to define a.com/components/com_dpcalendar/caldav.php. Then all the calendars from a.com should be visible on b.com in the plugin. These calendars can then be selected in a menu item and the events are directly fetched from a.com on b.com.

Troubleshooting

  • Authentication is not working in Apache CGI mode
    Some HTTP headers are handled differently in CGI mode. For that we have prepared a htaccess file. Rename the file htaccess.txt in the folder /components/com_dpcalendar/ to .htaccess. Then the authentication should work. More information can be found here.
  • Client denied error
    If you have the following error: AH01797: client denied by server configuration: /components/com_dpcalendar/caldav.php Then you need to allow the HTTP methods like OPTIONS or PROPFIND for your host. A user had to add the following snipped to it's .htaccess file:
    <LimitExcept GET POST OPTIONS PROPFIND>
    Order deny,allow
    Allow from 000.00.000.000
    Deny from all
    </LimitExcept>

Comments (0)

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.