\documentclass{article}
\usepackage{ulem}
\usepackage{graphicx}
\usepackage{hyperref}
\pagestyle{headings}
\begin{document}
\part{How to use iCal (Mac) for read/write access to Kronolith}
\textit{Written by Niko (horde att enikao doot net)}

<a href="https://wiki.horde.org/KronolithSunbird">KronolithSunbird</a> describes how to use Mozilla Sunbird for read/write access to Kronolith 2.2 calendars via WebDAV. You can also use Apple iCal (tested with 3.0.2) for this, once you have figured out how to set this up. Below is a step-by-step description.

The basic issue is Kronolith not providing \textit{real} CalDAV access to the calendar, but only understands data written to it in iCalendar format. If you set up the connection via Preferences | Accounts, iCal tries to use CalDAV.

Follow these steps for using iCal with Kronolith:<br />
(Note: I'm working with the German translation of Horde and iCal, and then translating the labels back to English. Thus, the labels may not match exactly.)

\begin{itemize}
\item Open your calendar in Horde.


\item Click on "Calendar" in the upper right corner.


\item Click on "Manage Calendars".


\item You will see a list of all your calendars. The right hand column (labeled "Subscribe Address") lists a URL. Right-click this URL and copy the target. For the purposes of this demonstration, we assume that it says "<a href="https://yourserver.org/horde/rpc.php/kronolith/postmaster@yourserver.org.ics">https://yourserver.org/horde/rpc.php/kronolith/postmaster@yourserver.org.ics</a>".


\item Open iCal on the Mac.


\item Create a new local calendar by clicking the + sign in lower left corner (you can also use an existing calendar).  If you're creating a new calendar be sure to add at least one event.  If you get a 500 error from the server it is probably because your iCal calendar is empty.


\item Right-click the calendar in the list, choose "Publish".


\item Now the important step: In "Publish as", you MUST enter what's in your URL between "/kronolith/" and ".ics", so in our demonstration case this would be "<a href="https://wiki.horde.org/mailto:postmaster@yourserver.org">postmaster@yourserver.org</a>".  If your URL is of the form: <a href="http://yourserver.org/horde/rpc.php/kronolith/username/username.ics">http://yourserver.org/horde/rpc.php/kronolith/username/username.ics</a>, then just put in your username.


\item Enter your server address as base URL, in our demonstration case this would be "<a href="https://yourserver.org/horde/rpc.php/kronolith">https://yourserver.org/horde/rpc.php/kronolith</a>". If your URL is of the form: <a href="http://yourserver.org/horde/rpc.php/kronolith/username/username.ics">http://yourserver.org/horde/rpc.php/kronolith/username/username.ics</a>, then just drop '/username.ics'.


\item Enter your Horde login and password as Username and Password.


\item I haven't yet figured out which of the checkboxes are taken into account by Kronolith, so feel free to add such information here.


\item Click Publish.


\end{itemize}
And you're done. This method will overwrite contents of your Kronolith calendar.

It should be noted that this will not only overwrite your calendar the first time you set it up, but also will overwrite the kronolith data with each synchronization/publish.  Essentially this becomes the master and kronolith should be treated as read-only as events added within kronolith will be deleted on the next sync.

\end{document}
