Removed website which is now in DAViCal Project/Website

This commit is contained in:
Jim Fenton 2014-10-23 14:54:41 -07:00
parent bf4ade9b83
commit ccfff62118
51 changed files with 0 additions and 1312 deletions

View File

@ -1 +0,0 @@
wiki

View File

@ -1,132 +0,0 @@
<?php
$title = "Administration";
include("inc/page-header.php");
?>
<h1>Administration Functions</h1>
<p>The administration of this application should be fairly simple. You can administer:</p>
<ul>
<li>Principals (Users, Resources or Groups)</li>
<li>Membership of groups</li>
<li>Privileges granted by a principal or collection to another principal</li>
</ul>
<p><i>There is no ability to view and / or maintain calendars or events from within this administrative interface.</i></p>
<p>To do that you will need to use a CalDAV capable calendaring application such as Evolution, Sunbird, Thunderbird
(with the Lightning extension), Mulberry, Apple iCal, an iPhone or something else.</p>
<h2>Users, Resources and Groups</h2>
<p>These are the things which may have collections of calendar resources (i.e. calendars).</p>
<p>In the lists of principals you can click on any principal to see the full detail
for that record.</p>
<p>The primary differences between the types of principal are as follows:</p>
<ul>
<li>Users will probably have calendars, and are likely to also log on to the system.</li>
<li>Resources do have calendars, but they will not usually log on.</li>
<li>Groups provide an intermediate linking to minimise administration overhead. They might not have calendars, and they will not usually log on.</li>
</ul>
<p>These differences are more conceptual than actual, however: in the DAV specification they are really all 'principals' and all equal.</p>
<h2>Groups</h2>
<p>Groups exist to simplify the maintenance of privileges. Rather than assigning a write privilege
to each individual with write access, you can create a group with the members being the people
needing write access, and assign the write privilege to that group.</p>
<p>In this way as people come and go you can maintain the members of the group and it is easier to see
who has the desired level of access. If the needed level of access changes, you can change the grant
to the individual group, rather than to each member of the group</p>
<h2>Privileges</h2>
<p>The basic DAV permissions are as follows:</p>
<p>read, write-properties, write-content, unlock, read-acl, read-current-user-privilege-set, write-acl, bind &amp; unbind</p>
<p>There are also a couple of useful aggregates of those, which are:</p>
<ul>
<li> write - aggregate of write-properties, write-content, bind &amp; unbind</li>
<li> all - aggregate of all permissions</li>
</ul>
<p>Since none of those covered publication of Free/Busy information, CalDAV introduced an additional <em>read-free-busy</em></p>
<p>Unfortunately that didn't cover all of the possibilities of scheduling privileges, so the
CalDAV Scheduling Extensions to WebDAV has added several further permissions:</p>
<p>schedule-deliver-invite, schedule-deliver-reply, schedule-query-freebusy, schedule-send-invite,
schedule-send-reply, schedule-send-freebusy
</p>
<p>Two more aggregate permissions are also added with this RFC:</p>
<ul>
<li> CALDAV:schedule-deliver - CALDAV:schedule-deliver-invite, CALDAV:schedule-deliver-reply and CALDAV:schedule-query-freebusy</li>
<li> CALDAV:schedule-send - CALDAV:schedule-send-invite, CALDAV:schedule-send-reply and CALDAV:schedule-send-freebusy</li>
</ul>
<p>That's all way too complicated, even if it does need to be there under the covers. Mostly you just need to know
about <em>read</em>, <em>write</em> &amp; <em>free-busy</em></p>
<h2>Some Examples</h2>
<h3>Several people administer a set of resources</h3>
<p>Suppose you have some resources, R1, R2 and R3 and you want to centralise the booking
of the resources through an administrative assistant, A1. When A1 is away you want to
have a backup person, so you also want A2 to be able to do that.</p>
<p>In a case like this you should create an intermediate group "G" and make each
of the people you want to be able to administer those resources members of that
group.</p>
<p>Each of the resources should be set up to grant default privileges to everyone
to see the full schedule (<em>read</em> privilege), and the resources should be
set up to grant <em>write</em> (or possibly <em>all</em>) privileges to the group "G".</p>
<p>In this case you might only set up a single principal for the resources, and have
multiple calendars, one for each resource.</p>
<pre>
A1 ==&gt;&gt; is a member of ==&gt; G
A2 ==&gt;&gt; is a member of ==&gt; G
R1 ==&gt;&gt; grants write privilege to ==&gt; G
R2 ==&gt;&gt; grants write privilege to ==&gt; G
R3 ==&gt;&gt; grants write privilege to ==&gt; G
P1 is a different principal with no specifically granted privilege
</pre>
<p>P1 will be able to see all of the scheduled events for R1, R2 and R3, but will
not be able to create, delete or modify them. A1 and A2 will be able to see,
create and modify all the events.</p>
<h4>An administrative assistant has full access to a managers calendar</h4>
<p>In this case the manager will simply grant the desired specific privileges to their assistant.</p>
<h4>A team wish to see each others calendars</h4>
<p>In this case you should create a group "G", which all team members are
members of, and each team member will grant whatever privileges they wish to that group.</p>
<pre>
P1 ==&gt;&gt; is a member of ==&gt; G
P1 ==&gt;&gt; grants read privilege to ==&gt; G
P2 ==&gt;&gt; is a member of ==&gt; G
P2 ==&gt;&gt; grants read privilege to ==&gt; G
P3 ==&gt;&gt; is a member of ==&gt; G
P3 ==&gt;&gt; grants write privilege to ==&gt; G
P4 ==&gt;&gt; is a member of ==&gt; G
P4 ==&gt;&gt; grants read-free-busy privilege to ==&gt; G
</pre>
<h4>A team can modify each others calendars</h4>
<p>Similar to above, you should create a group "G", which all team members are
members of, and each team member will grant <em>write</em> privileges to that group.</p>
<pre>
P1 ==&gt;&gt; is a member of ==&gt; G
P1 ==&gt;&gt; grants write privilege to ==&gt; G
P2 ==&gt;&gt; is a member of ==&gt; G
P2 ==&gt;&gt; grants write privilege to ==&gt; G
P3 ==&gt;&gt; is a member of ==&gt; G
P3 ==&gt;&gt; grants write privilege to ==&gt; G
P4 ==&gt;&gt; is a member of ==&gt; G
P4 ==&gt;&gt; grants write privilege to ==&gt; G
</pre>
<p>Also see the Permissions page on the DAViCal Wiki: <a href="http://wiki.davical.org/w/Permissions" title="The Permissions page on the DAViCal Wiki">http://wiki.davical.org/w/Permissions</a>.</p>
<h1>Configuring Calendar Clients for DAViCal</h1>
<p>The <a href="clients.php">DAViCal client setup page on sourceforge</a> has information on how
to configure Evolution, Mozilla Calendar (Sunbird &amp; Lightning) and Mulberry to use remotely hosted calendars.</p>
<p>The administrative interface has no facility for viewing or modifying calendar data.</p>
<h1>Configuring DAViCal</h1>
<p>If you can read this then things must be mostly working already.</p>
<p>The <a href="installation.php">DAViCal installation page</a> on sourceforge has
some further information on how to install and configure this application.</p>
<?php
include("inc/page-footer.php");

View File

@ -1,55 +0,0 @@
<?php
$title = "DAViCal Background";
include("inc/page-header.php");
?>
<h1>Background</h1>
<p>The CalDAV specification has been under development for a few years now, and at the same time we
have seen increasing pressure from people and organisations in the open source world to provide a
solution to their shared calendaring problems.
</p>
<p>In evaluating the possibilities for shared calendaring, there are a number of possible approaches, but
we have elected to follow the path of implementing CalDAV because we believe it is a good specification
and that it will in due course gain client implementations and provide the richest user
experience through those client implementations.</p>
<h1>Goals</h1>
<p>CalDAV is a client-server protocol specific to managing and reporting on <em>collections</em> of <em>calendar resources</em>.</p>
<p>As such, our intentions in developing this application are as follows:</p>
<ul>
<li>Simplicity of Prerequisites</li>
<li>Simplicity of Setup</li>
<li>Simplicity of Operation</li>
<li>Web-based Administration</li>
</ul>
<h2>Simplicity of Prerequisites</h2>
<p>We have chosen to write this in PHP because we believe that PHP is a widely available web scripting language.</p>
<p>We have chosen to use the Apache web server because it is also widely available. This is not necessarily a requirement,
but no testing has been undertaken in other PHP environments to date.</p>
<p>We have chosen to use the PostgreSQL database, because it is a free, open-source database, which operates on a very wide set of
operating environments, and which is <em>fully</em> ACID compliant.</p>
<h2>Simplicity of Setup</h2>
<p>For the greatest ease use you should consider installing DAViCal on the <a href="http://www.debian.org/">Debian GNU/Linux</a>
distribution from the readily available, signed packages.</p>
<p>We expect to increase the level of automation and simplicity for the Debian target release in particular, although other
distributions might also become easier at the same time. We do expect slightly greater installation complexity in the first
few releases as we come to understand the particular problems people experience.</p>
<h2>Simplicity of Operation</h2>
<p>In general DAViCal should not need significant maintenance to keep it operating.</p>
<p>Administrative functionality will be kept as simple as possible, within the target of supporting
organisations of up to several hundred staff.</p>
<p>The server-side smarts in DAViCal are intended to be fairly minimal in order to support CalDAV
only in a manner sufficient to inter-operate with clients, and with the focus primarily
on the storage of calendar resources.</p>
<h2>Web-based Administration</h2>
<p>General administration of the system should be through a web-based application.</p>
<p>Calendars will not be made available in a web-based view in initial releases. It is unlikely that calendars will ever be
maintainable through a web-based client, although the server should support the use of web-based client software which
works using the CalDAV protocol.</p>
<?php
include("inc/page-footer.php");

View File

@ -1,68 +0,0 @@
<?php
$title = "Client Configuration";
$two_panes = true;
include("inc/page-header.php");
$dir = "clients";
$clients = array();
$screenshots = array();
$icons = array();
$details = array();
if ( is_dir($dir)) {
if ( $dh = opendir($dir) ) {
while (($file = readdir($dh)) !== false ) {
if ( preg_match( '#^([^/]+)-([^/-]+)\.([^/.-]+[^~])$#', $file, $matches ) ) {
switch ( $matches[2] ) {
case 'details':
$details[$matches[1]] = $file;
$clients[] = $matches[1];
break;
case 'icon': $icons[$matches[1]] = $file; break;
case 'screenshot': $screenshots[$matches[1]] = $file; break;
default:
break;
}
}
}
closedir($dh);
}
}
$client_page = "Interoperability";
if ( isset( $_GET['client'] ) ) {
if ( isset( $details[$_GET['client']] ) ) {
$client_page = $_GET['client'];
}
}
$style = ($client_page == "Interoperability" ? ' class="selected"' : '' );
printf( '<p%s><a%s href="clients.php?client=Interoperability">Interoperability</a></p>', $style, $style );
sort($clients);
foreach( $clients AS $k => $v ) {
if ( $v == "Interoperability" ) continue;
if ( $v == "Other" ) continue;
$style = (strcmp($client_page,$v) == 0 ? ' class="selected"' : '' );
printf( '<p%s><a%s href="clients.php?client=%s">', $style, $style, urlencode($v) );
if ( isset($icons[$v]) ) {
printf( '<img src="clients/%s" alt="%s" /><br />', urlencode($icons[$v]), urlencode($v) );
}
echo "$v</a></p>\n";
}
$style = ($client_page == "Other" ? ' class="selected"' : '' );
printf( '<p%s><a%s href="clients.php?client=Other">Other</a></p>', $style, $style );
include("inc/page-middle.php");
include("clients/".$details[$client_page]);
if ( isset($screenshots[$client_page]) ) {
printf( '</div><p><img src="clients/%s"></p>', urlencode($screenshots[$client_page]) );
$tags_to_be_closed = "</div>\n";
}
include("inc/page-footer.php");
?>

View File

@ -1,23 +0,0 @@
<h1>Chandler</h1>
<p>The <a href="http://www.osafoundation.org/">Open Source Applications Foundation</a> are developing <a href="http://cosmo.osafoundation.org/">Cosmo</a>, which is a CalDAV server
written in Java and <a href="http://chandler.osafoundation.org/">Chandler</a>, which is a CalDAV capable mail and calendaring application
written in Python.</p>
<p>Basic setup is as follows:</p>
<ol>
<li>Select "Subscribe" from the "Share" menu (or in older builds it was in the "Collection" menu).</li>
<li>Enter a URL like: "http://calendar.example.net/caldav.php/username/calendar/" (click "Subscribe") <img src="clients/Chandler-dialog1.png" /> <br /> &nbsp;</li>
<li>You will then be prompted for a username/password with in an expanded dialog. Enter these and click "Subscribe" again. <img src="clients/Chandler-dialog2.png" /> <br /> &nbsp;</li>
<li>You should now have a new calendar showing.</li>
</ol>
<h2>Caveats</h2>
<p>Chandler describes itself as 'an experimentally usable calendar', and it certainly feels that
way. It also will only synchronise to the CalDAV server either when you press the "Sync"
button or with a default frequency of quarter-hourly. This is quite different to the other clients I
have used which all aggressively push new and changed items to the server as soon as possible,
but which may be lazy about fetching updates.</p>
<p>Operation with DAViCal seems generally fine although Chandler does not correctly display the account
information correctly, even if it seems to remember it internally.</p>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@ -1,25 +0,0 @@
<h1>Evolution</h1>
<p><a href="http://www.gnome.org/projects/evolution/">Evolution</a> is available in most Linux distributions. The CalDAV support was supposedly written
in a frenzy of hacking one day when the draft specification was at around revision 8. As a result there
was little in the way of a repository available to test against until recently.</p>
<ol>
<li>Select "File" then "New" then "Calendar" from the menus.</li>
<li>Choose a type of "CalDAV", enter a name, and a URL such as <code>caldav://server.domain.name/caldav.php/username/calendar/</code>, enter your user name for DAViCal and click "OK".<img src="clients/Evolution-dialog1.png" /> <br />&nbsp;</li>
<li>You should now be prompted for a password for that username. Enter the password and your calendar should now show.</li>
</ol>
<h2>Caveats</h2>
<p>If you have problems with Evolution, you will need to quit evolution, remove the cache file which will be in ~/.evolution/cache/calendar/ and
restart. If you still have problems try doing that, but killing evolution-data-server in addition.
</p>
<p>Sometimes Evolution writes error messages into the cache file, so if you have ongoing problems you may want to
take a look inside that.</p>
<p>There are some quirks with Evolution's handling of CalDAV too, prior to 2.12.0, so perhaps take a look at the following
bugs (fixed in 2.12.0):</p>
<ul>
<li><a href="http://bugzilla.gnome.org/show_bug.cgi?id=355659">New appointments disappear for 1 minute, and then reappear</a></li>
<li><a href="http://bugzilla.gnome.org/show_bug.cgi?id=354855">Support Response with Relative URLs</a></li>
</ul>
<p>There may also be bugs in Evolution's handling of SSL with CalDAV - I couldn't get it to work reliably.</p>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

View File

@ -1,34 +0,0 @@
<h1>Cross-client Interoperability Considerations</h1>
<p>If you intend to have users accessing the DAViCal CalDAV Server with more than one client
then you should attempt to structure the URLs which they use to access the system in the way
that Mulberry does it.</p>
<p>Basically, Mulberry breaks the URL into three parts:</p>
<ul>
<li>The host name</li>
<li>The root path</li>
<li>Calendar namespace</li>
</ul>
<p>The host name is, of course, up to you. The 'root path' should be
<code>/caldav.php/</code> and anything following that is the calendar
namespace.</p>
<p>Within the calendar namespace DAViCal uses the first element of the
path as the user or 'princpal' name, so that a client connecting at the
root path can see all of the (accessible) users and resources available
to them (Mulberry displays this hierarchy) with any calendars below that.</p>
<p>This means that in Evolution, Lightning and other software wanting a
'calendar' URL you should specify a URL which is something like:</p>
<pre>
http://calendar.example.net/caldav.php/username/calendar/
</pre>
<p>DAViCal creates two collections automatically when a user is created. In
recent versions these are called 'calendar' and 'addressbook'. Some software
also makes it easy to create more calendars and addressbooks, or you can create
more through DAViCal's web interface, also.</p>
<p>In older versions of DAViCal (pre 0.9.9.5) the default calendar was named 'home'
and there was no default addressbook.</p>

View File

@ -1,23 +0,0 @@
<h1>Sunbird / Lightning (Mozilla Calendar)</h1>
<p>The <a href="http://www.mozilla.org/projects/calendar/">Mozilla Calendar</a> project offers their calendar under two different names:
<em><a href="http://www.mozilla.org/projects/calendar/sunbird/">Sunbird</a></em> is a standalone calendar
application, and <em><a href="http://www.mozilla.org/projects/calendar/lightning/">Lightning</a></em> is a Thunderbird extension.
The two are essentially the same, as far as DAViCal is
concerned, and these instructions should work for either of them.</p>
<ol>
<li>Select "New Calendar" from the "File" menu.</li>
<li>Choose "On the Network" (click "Next")<img src="clients/Mozilla-dialog1.png" /> <br /> &nbsp;</li>
<li>Choose a format of "CalDAV" and enter a URL like: "http://calendar.example.net/caldav.php/username/calendar/" (click "Next")<img src="clients/Mozilla-dialog2.png" /> <br /> &nbsp;</li>
<li>Give the calendar an appropriate display name, and choose a colour for events on this calendar. (click "Next")<img src="clients/Mozilla-dialog3.png" /> <br /> &nbsp;</li>
<li>click "Finish"</li>
</ol>
<h2>Caveats</h2>
<p>At version 0.3 the Mozilla calendar does not automatically refresh the calendar view, so if someone else has
added a meeting you will have to manually refresh the view to see that.</p>
<p>It is early days yet for the Mozilla calendar in it's current incarnation so no doubt there are other quirks
with Mozilla's handling of CalDAV too, so perhaps take a look at their bugzilla.</p>
<p>As at version 0.3, you should be aware of this <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=360076">bug with empty CalDAV calendars</a> which can be
confusing. Add your calendar, create an event and then re-start the program before saying that things
are not working!</p>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

View File

@ -1,29 +0,0 @@
<h1>Mulberry</h1>
<p><a href="http://www.mulberrymail.com/">Mulberry</a> is the most well-behaved of the applications I have been
able to use. It does have some bugs, however, and a particular annoyance around it's use of non-standard names
for time zones. Mulberry is the only client I have used so far which can issue a MKCALENDAR command or which
will display a hierarchy of calendars from a single configured URL, dicovering the calendars through recursive
PROPFIND requests.</p>
<ol>
<li>Select "Preferences" from the "File" menu.</li>
<li>Choose the "Accounts" tab</li>
<li>Select "New" from the "Account" drop-down and a "Create New Account" dialog will appear.</li>
<li>Enter a name for the account, choose "CalDAV Calendar" for the type and click "OK"</li>
<li>In the "Server" field enter the domain name of your CalDAV server, such as "calendar.example.net"</li>
<li>In the "Authentication" pane of the "Accounts" tab, enter your username.<img src="clients/Mulberry-dialog1.png" /> <br /> &nbsp;</li>
<li>In the "Options" pane of the "Accounts" tab, enter the path, which should be "/caldav.php/"<img src="clients/Mulberry-dialog2.png" /> <br /> &nbsp;</li>
<li>"OK" the preferences dialog</li>
<li>A list of the users and resources which you are allowed to access should appear. Some may contain calendars.</li>
<li>If you don't already have a calendar for your own user, ensure your username is highlighted and choose "Create" from the "Calendar" menu.</li>
<li>Once you have a calendar created, you need to <em>subscribe to it. One way is to right-click on it and choose 'Subscribe'.</em></li>
</ol>
<h2>Caveats</h2>
<p>Note that Mulberry has a complex user interface. When I wrote this I went back into Mulberry and initially
thought that DAViCal had regressed somewhat and that these instructions didn't exactly work... :-) It turned out
that these instructions worked <em>just fine</em> when I followed them to the letter the next day. Go figure.
I think I need to record some screenshots of this one...</p>
<p>If you're using Mulberry on Linux you probably have really crappy fonts purporting to be Helvetica, Times
and Courier - go into File -&gt; Preferences -&gt; Fonts and change them to something nicer as soon as
possible. Apple paid a lot of money to license those fonts, but few Linux users or distributors do.</p>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

View File

@ -1,29 +0,0 @@
<h1>Other Client Software</h1>
<p>I would love to have more client software available to test DAViCal
against, but so far these are the only ones I have access to.</p>
<p>If you want to point me at more free software that supports CalDAV, or
send me free copies of such proprietary software, then I will add it to
the list as well as make DAViCal work with it.</p>
<p>In the general CalDAV terminology, client software will want to know
several facts about the CalDAV server. Some (like iCal and iOS) will try
and discover these facts for themselves, and others (like Lightning and
Evolution) will require you to enter some information. When they ask for
that information they will be asking for the following things:</p>
<ol>
<li>Where is the user's "home" collection?</li>
<li>Where is the user's "calendar" collection?</li>
<li>What is the server's domain name</li>
</ol>
<p>Typically the answers, in DAViCal's case, are:</p>
<ol>
<li>.../caldav.php/username/</li>
<li>.../caldav.php/username/calendar/ (although in older versions the default calendar was called 'home' rather than 'calendar')</li>
<li>I can't help here - whatever you called it, I guess!</li>
</ol>
<p>There could well be a wider range of information about many and varied client
software on the <a href="http://wiki.davical.org/" title="The DAViCal CalDAV Server Wiki">DAViCal Wiki</a> as well.

View File

@ -1,23 +0,0 @@
<h1>iCal</h1>
<p><a href="http://www.apple.com/macosx/what-is-macosx/mail-ical-address-book.html">iCal</a>, from version 3.0 (released with OS 10.5) is generally well-behaved
and will discover your own calendars when configured. It will not allow you to manipulate other calendars on
the same server, however, unless you use different credentials to access them.</p>
<ol>
<li>Open the "Preferences" dialog.</li>
<li>Choose the "Accounts" tab</li>
<li>Click on the "+" and a new panel will appear.</li>
<li>Enter a "Description" for the account.</li>
<li>The "Username" and "Password" are the relevant ones for your CalDAV server.</li>
<li>Open the "Server Options" area and set your account URL to point to http://host.../caldav.php/username/.<img src="clients/iCal-dialog.png" /> <br /> &nbsp;</li>
<li>Click "Add" to confirm the new account</li>
<li>Your own calendars will be automatically discovered.</li>
<li>If you don't already have a calendar for your own user, go to the calendar view and long-click on the "+" will display a menu letting you create a new one.</li>
</ol>
<h2>Caveats</h2>
<p>DAViCal does not fully support the draft scheduling extensions to CalDAV, so you will not see the full functionality
of iCal.</p>
<p>iCal does not let you browse the calendar hierarchy to find other calendars you could view, so you will not
see the full functionality of DAViCal either.</p>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

View File

@ -1,38 +0,0 @@
<h1>iPhone</h1>
<p>The Apple <a href="http://www.apple.com/iphone/">iPhone</a>, from OS version 3.0 is generally well-behaved
and will discover your own calendars when configured. It will not allow you to manipulate other calendars on
the same server, however, unless you use different credentials to access them.</p>
<ol>
<li>Open "Settings", "Mail, Contacts, Calendars" and choose "Add Account".</li>
<li>Choose "Other" and "Add CalDAV Account".</li>
<li>Fill in the fields with your server name, username &amp; password. The description can be anything.</li>
<li>Press the "Next" button at top-right.</li>
<li>At this point you may get an error message about SSL connection not available. You should choose "Cancel", to get to the advanced settings slightly quicker.</li>
<li>Open the "Advanced Settings" area and choose whether SSL is on or off, and enter the port number (80 is standard for http &amp; 443 is standard for https, but the iPhone wants to use 8008 &amp; 8443 for these)</li>
<li>In the "Account URL" change "/principals/users/username" to "/caldav.php/username"</li>
<li>Click on the "Caldav" top left to return to the basic settings and click on "Next" top right.</li></ol>
<h2>Other Settings</h2>
<p>You may want to go into some of the other settings under "Mail, Contacts, Calendars" and set some of the other settings, including:</p>
<ul>
<li>Fetch New Data</li>
<li>Time Zone Support</li>
<li>Default Calendar</li>
</ul>
<p>
All of these should be obvious. You can choose the calendar which an event goes into
when you create the event, but if you want to move it to a different calendar you will
need to do it with a different client - it's not an option in Apple's one.
</p>
<p>Similarly, in the events the repeat frequencies are fairly limited, but the calendar
does support the more arcane possibilities which you could create with a different
client application.</p>
<h2>Screenshots</h2>
<table border="none" cellpadding="2" cellspacing="2">
<tr><td><img src="clients/iPhone-1.png" alt="Screenshot of setting up an account on an iPhone" /></td><td><img src="clients/iPhone-2.png" alt="Screenshot of setting up an account with adanced settings on an iPhone" /></td></tr>
<tr><td>Adding an Account</td><td>“Advanced Settings” will appear if service discovery is unavailable.</td></tr>
<tr><td><img src="clients/iPhone-3.png" alt="Screenshot of the advanced settings on an iPhone" /></td><td><img src="clients/iPhone-4.png" alt="Screenshot of common advanced settings on an iPhone" /></td></tr>
<tr><td>Security, port, and path</td><td>Typical settings for non-SSL, port 80 and 443 for SSL</td></tr>
</table>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 766 B

View File

@ -1,71 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://web.resource.org/cc/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="260"
height="260"
id="svg2"
sodipodi:version="0.32"
inkscape:version="0.45.1"
sodipodi:docbase="/home/andrew/projects/rscds/docs/website/images"
sodipodi:docname="davical_logo.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"
version="1.0">
<defs
id="defs4" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
gridtolerance="10000"
guidetolerance="10"
objecttolerance="10"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.4"
inkscape:cx="186.53159"
inkscape:cy="91.978333"
inkscape:document-units="px"
inkscape:current-layer="layer1"
inkscape:window-width="1400"
inkscape:window-height="964"
inkscape:window-x="0"
inkscape:window-y="16"
showborder="false"
inkscape:showpageshadow="false"
borderlayer="false"
width="260px"
height="260px" />
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-333.14285,-376.93362)">
<path
style="fill:#be1e1d;fill-opacity:1"
d="M 334.57142,507.3622 L 334.57142,378.36219 L 463.57143,378.36219 L 592.57143,378.36219 L 592.57143,507.3622 L 592.57143,636.3622 L 463.57143,636.3622 L 334.57142,636.3622 L 334.57142,507.3622 z M 499.07185,622.75672 C 493.14746,602.90175 491.11905,597.99114 498.48322,597.01403 C 507.24637,595.85129 525.17483,590.84119 534.28074,585.38063 C 566.45385,566.08721 565.06199,527.45277 530.8205,489.3318 C 520.30676,477.62687 499.58375,463.01844 493.4933,463.01844 C 488.00762,463.01844 488.7541,464.57337 499.89503,476.35329 C 521.19885,498.87894 530.98513,534.27071 519.83094,548.45095 C 514.45191,556.46282 506.31071,558.78045 498.47771,560.07317 C 490.60793,561.37196 493.04847,560.11522 496.57729,547.42275 C 498.46643,540.62789 499.53226,534.58866 498.9458,534.00221 C 498.35936,533.41576 492.20868,539.12467 485.27761,546.68871 C 472.55212,560.57632 457.47861,571.42543 446.43861,575.25393 C 434.06007,579.5466 434.24777,580.29465 444.83131,584.55313 C 454.96059,588.62884 474.11695,600.68066 485.81632,613.82099 C 497.03872,626.42559 500.95411,629.06504 499.07185,622.75672 z M 439.38392,551.88512 C 439.38392,550.87509 436.76538,547.84533 433.56495,545.15235 C 417.05209,531.25767 405.11831,506.40967 405.11831,485.92195 C 405.11831,473.56527 405.56997,472.24178 411.97143,465.84032 C 417.1953,460.8506 423.25402,458.50295 430.8847,456.60205 C 436.75783,455.13896 436.10686,455.38507 432.58119,469.31727 C 430.851,476.15434 429.63739,482.16255 430.2375,482.76265 C 430.83762,483.36275 436.43374,478.21237 442.67336,471.31738 C 454.55344,458.18947 472.30744,444.41296 482.71986,441.4887 C 494.33412,438.22691 494.1929,436.12455 482.71986,432.15975 C 472.21322,428.52892 455.88897,416.68407 443.39131,403.04508 C 436.72951,395.7749 430.78413,390.32133 430.17941,390.92609 C 429.57466,391.53084 430.49125,397.47232 432.21628,404.12939 C 436.00979,418.769 436.12299,420.10756 432.83314,420.44191 C 428.50642,420.88164 414.60168,422.82606 404.64067,426.7561 C 362.70116,443.3031 360.55918,487.03575 399.64191,528.8153 C 415.53528,545.80537 439.38392,559.64927 439.38392,551.88512 z "
id="path2170"
sodipodi:nodetypes="ccccccccccsssssczssssssccsscssssssssssssc"
inkscape:export-filename="/home/andrew/projects/rscds/docs/website/images/davical_logo.ico"
inkscape:export-xdpi="11.25"
inkscape:export-ydpi="11.25" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 541 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -1,20 +0,0 @@
<?php
echo $tags_to_be_closed;
?>
<div id="footer">
<br />
<p class="left" style="vertical-align: text-top;">
<a href="http://validator.w3.org/check?uri=referer" class="flink">XHTML</a> | <a href="http://jigsaw.w3.org/css-validator/check/referer" class="flink">CSS</a>
</p>
<p class="right">
Copyright 2007-2014 | Andrew McMillan
</p>
</div>
</div>
</body>
</html>

View File

@ -1,45 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>DAViCal<?php
if ( isset($title) ) {
echo " - ". $title;
}
else {
echo " CalDAV Server";
}
?></title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<div id="pageContainer">
<div id="header">
<div id="title"><?php
if ( isset($title) ) {
echo $title;
}
else {
echo "DAViCal CalDAV Server";
}
?></div>
<div id="subTitle">A CalDAV Store</div>
<div id="headerLinks">
<a href="index.php" class="hlink">Home</a> |
<a href="installation.php" class="hlink">Installation</a> |
<a href="clients.php" class="hlink">Client Config</a> |
<a href="administration.php" class="hlink">Administration</a> |
<a href="background.php" class="hlink">Background</a> |
<a href="http://wiki.davical.org/w/Main_Page" class="hlink">DAViCal Wiki</a> |
<a href="https://gitlab.com/davical-project/davical" class="hlink">DAViCal on GitLab</a>
</div>
</div>
<div id="pageContent">
<?php
$tags_to_be_closed = "</div>\n";
if ( isset($two_panes) && $two_panes ) {
$tags_to_be_closed .= $tags_to_be_closed;
echo '<div id="leftSide">';
}
?>
<hr />

View File

@ -1,3 +0,0 @@
</div>
<div id="rightSide">
<hr />

View File

@ -1,80 +0,0 @@
<?php
$title = "DAViCal Home";
include("inc/page-header.php");
?>
<h1>About DAViCal</h1>
<p>DAViCal is a server for calendar sharing. It is an implementation
of the CalDAV protocol which is designed for storing calendaring
resources (in iCalendar format) on a remote shared server. </p>
<p>An increasing number of calendar clients support
the maintenance of shared remote calendars through CalDAV, including Mozilla Calendar
(Sunbird/Lightning), Evolution, Mulberry, Chandler, and various other closed-source products
such as Apple's iCal and iOS. </p>
<h2>Features</h2>
<p>DAViCal:<ul>
<li>is <a href="http://www.gnu.org/philosophy/open-source-misses-the-point.html">Free Software</a> licensed under the <a href="http://www.gnu.org/licenses/gpl.html">General Public License</a>.</li>
<li>uses an SQL database for storage of event data</li>
<li>supports backward-compatible access via WebDAV in read-only or read-write mode (not recommended)</li>
<li>is committed to inter-operation with the widest possible CalDAV client software.</li>
</ul></p>
<p>DAViCal supports basic delegation of read/write access among calendar users, multiple users or clients reading
and writing the same calendar entries over time, and scheduling of meetings with free/busy time displayed. </p>
<h1>Overview of Installation and Use</h1>
<h2>Prerequisites</h2>
<p>To install and use DAViCal you will need:<ul>
<li>a PostgreSQL database server</li>
<li>a web server which can run PHP version 5</li>
</ul></p>
<p>We use <a href="http://www.debian.org/">Debian GNU/Linux</a> for this, but other people use various different
versions of Linux, FreeBSD, Mac OSX and even Microsoft Windows. We definitely do not recommend using Windows
for this unless you are completely hobbled by silly internal IT policies and have to do so.</p>
<h2>Getting and Installing DAViCal</h2>
<p>Start by looking on the <a href="installation.php">DAViCal
Installation Page</a> for instructions on places to download, and
detailed instructions as to what to do when you have it.</p>
<p>There is a lot of information on the wiki about <a href="http://wiki.davical.org/w/Configuration">DAViCal configuration settings</a> but in most cases the configuration
will need very few of these settings.</p>
<h2>Using DAViCal</h2>
<p>Read here about <a href="clients.php">how to configure various CalDAV Clients with DAViCal</a>. There is also
a page on the wiki which will sometimes have newer information.</p>
<h2>Getting Help</h2>
<p>Specifically: help on DAViCal!</p>
<p>The <em>best</em> place to go for help on DAViCal is the <a href="http://wiki.davical.org/w/Main_Page">DAViCal Wiki</a>.</p>
<p>If you can't find your answer there, then the IRC channel #davical on <a href="irc://irc.oftc.net/#davical">irc.oftc.net</a> is
a great next port of call. Many problems can be solved quickly with a short on-line chat.</p>
<p>Almost as good as the IRC channel is the <a href="https://lists.sourceforge.net/mailman/listinfo/davical-general">DAViCal General Mailing List</a>.</p>
<h1>Credits</h1>
<p>The DAViCal CalDAV Server was conceived and written by <a href="http://andrew.mcmillan.net.nz/">Andrew McMillan</a>.</p>
<p>Many people have contributed to DAViCal, through providing translations of the interface, reporting bugs and
sending patches for things here and there. Some more notable contributors include:</p><ul>
<li>Maxime Delorme (CSS, LDAP, French translations)</li>
<li>Andrew Ruthven (Various enhancements)</li>
<li>Rob Ostenson (LDAP &amp; Scheduling contributions)</li>
<li>Leho Kraav (RSS feeds)</li>
</ul>
<h1>Contributing to DAViCal</h1>
<p><img src="images/larger.png" alt="DAViCal Logo" height="160" width="160" align="right" class="gone">As of Spring, 2014, DAViCal has transitioned to a <a href="http://wiki.davical.org/w/Community_Support">community support model</a>. We welcome contributions from interested people. You don't need to be able to write code - there are lots of
small tasks around the project that can be done.
CalDAV server:</p>
<p>Here are some things you could do that will help us to concentrate on making DAViCal better:<ul>
<li>writing documentation</li>
<li>helping people on IRC or on the mailing list</li>
<li>translating the DAViCal interface to another language</li>
<li>managing the release process</li>
<li>reviewing and tidying the Wiki updates</li>
<li>writing and reviewing patches</li>
<li>designing future functionality</li>
<li>thinking of more interesting ways to contribute to DAViCal!</li>
</ul>
<p>Can you think of more?</p>
<?php
include("inc/page-footer.php");

View File

@ -1,295 +0,0 @@
<?php
$title = "Installation";
include("inc/page-header.php");
?>
<h1>Before Starting</h1>
<h2>Debian Users</h2>
<p>Recent Debian (and Ubuntu) releases have DAViCal 1.1.1 and AWL 0.53
(a library referenced by DAViCal) available in their repositories,
and you can use apt-get or similar tools to download and install
DAViCal. Once you have done that, you should be able to proceed to
the Database Setup section, below.</p>
<h2>Other Linux Users</h2>
<p>The <a href="http://wiki.davical.org">DAViCal wiki</a> contains
information on installation on other versions of Linux. Please feel
free to contribute your experiences, using the mailing list if you
don't have a wiki account.</p>
<p>In many cases, you will need to download the latest versions of
the <code>DAViCal</code> and <code>awl</code> packages from
the <a href="https://gitlab.com/groups/davical-project">repository on
GitLab</a>. More details on this are on
the <a href="http://davical.dhits.nl/index.php?title=Downloading">Downloading
page on the wiki</a>.</p>
<p>We would like to hear from non-Debian users regarding things which
might have been missed, or things you have learned about the system,
so please write about your installation experiences on the Wiki, or
post a message on the mailing list.</p>
<h2>Non-Linux Users</h2>
<p>We would really like to hear from you. As far as we can see there
is no reason why this can't all work on FreeBSD, Microsoft Windows,
VMS, Mac OS or whatever else, as long as the pre-requisites are able
to be installed.</p>
<p>For Unix and unix-like operating systems the "Other Linux Users"
instructions are likely to be reasonably close to what you need. For
other systems everything will need some adjustment, and in particular
some of the path name and shell expectations coded into the database
creation scripts are likely to need love.</p>
<p>We're available to answer questions, anyway :-)</p>
<h1>Pre-requisites</h1>
<p>DAViCal depends on a number of things. Firstly, it depends
on Andrew's Web Libraries (AWL) which is a set of useful
PHP functions and objects written by Andrew McMillan over
a number of years.</p>
<p>The following other software is also needed:</p>
<ul>
<li>A webserver which can run PHP (however most of this documentation assumes Apache 2.2 or later)</li>
<li>PHP: 5.1 or greater</li>
<li>PostgreSQL: 8.1 or greater</li>
</ul>
<p>The PostgreSQL database may be installed on a server other
than the web server, and that kind of situation is recommended
if you want to increase the security or scalability of your
installation.</p>
<p>Since the CalDAV store takes over a significant amount of path
hierarchy, it can be easier in its own virtual
host. If you want it to operate within the web root of some
other application there are instructions on the Wiki about doing this,
as well as other fancy tricks such as configuring URL rewriting in
order to shorten the path.</p>
<h1>Database Setup</h1>
<h2>Connecting to the Database</h2>
<p>Before your database has been created, you should edit your pg_hba.conf
file (in /etc/postgresql/8.x/main/pg_hba.conf on Debian or derivatives) in
order to grant access to the database for the 'davical_dba' user that will
be created to 'own' the database and tables, and also for the 'davical_app'
user which will be created for the web application fo connect as.</p>
<p>In a simple installation, where you do not have untrusted
users on your database server, and your database is on the same
computer as the web server, the following lines (at the very <em>top</em>
of the pg_hba.conf file) should be enough:</p>
<pre>
local davical davical_app trust
local davical davical_dba trust
</pre>
<p>This means that anyone on the local computer (including the
web application) will have rights to connect to the DAViCal
database as the 'davical_app' or 'davical_dba' user. It will not allow remote access,
or access as any user other than 'davical_app' or 'davical_dba'.</p>
<p>If you want to connect to the database over TCP/IP from your webserver
on '192.168.59.231' (e.g. rather than unix sockets which will only work for
access from the local machine), the lines in the pg_hba.conf file should look
something like:</p>
<pre>
host davical davical_app 192.168.59.231/32 trust
host davical davical_dba 192.168.59.231/32 trust
</pre>
<p>If you want greater security, or if you want to have the
database on a different server, you should read the
<a href="http://www.postgresql.org/docs/8.4/interactive/client-authentication.html">PostgreSQL documentation on pg_hba.conf</a>
for the version you are using.</p>
<p>Once you have changed the pg_hba.conf file you will need to
reload or restart the PostgreSQL process for the change to come
into effect.</p>
<h2>Creating and Building the Database</h2>
<p>To create the database itself, run the script:</p>
<pre>
dba/create-database.sh
</pre>
<p>Note that this script calls the AWL database scripts as part
of itself and it expects them to be located in /usr/share/awl/dba
which might be a reasonable place, but it might not be where you
have put them.</p>
<p>This script expects to be running as a user who has rights to create a new database, so you
may need to do this as the "postgres" user, for example:</p>
<pre>
su postgres -c /usr/share/davical/dba/create-database.sh
</pre>
<h1>Apache Configuration</h1>
<h2>Relative to an existing DocumentRoot</h2>
<p>You can create a symlink from an existing web root directory to the
/usr/share/davical/htdocs directory, such as:</p>
<pre>
cd /my/apache/docroot
ln -s /usr/share/davical/htdocs davical
</pre>
You will need to change your global PHP configuration to include the
directory '/usr/share/awl/inc' in the 'include_path' setting, along with
any other directories already needed by other applications.
You will also need to ensure that 'magic_quotes_gpc' is off.
<h2>Using a Virtual Host</h2>
<p>Your Apache instance needs to be configured for Virtual Hosts. If
this is not already the case you may want to read some documentation
about that, and you most likely will want to ensure that any existing
site becomes the **default** virtual host, with DAViCal only being a
single virtual host.</p>
<p>I use a Virtual Host stanza like this:</p>
<pre>
# Virtual Host def for Debian packaged DAViCal
&lt;VirtualHost 123.4.56.78 &gt;
DocumentRoot /usr/share/davical/htdocs
DirectoryIndex index.php index.html
ServerName davical.example.net
ServerAlias calendar.example.net
Alias /images/ /usr/share/davical/htdocs/images/
&lt;Directory /usr/share/davical/htdocs/&gt;
AllowOverride None
Order allow,deny
Allow from all
&lt;/Directory&gt;
AcceptPathInfo On
#
# You probably don't need to enable any of these sorts of things other than in exceptional
# circumstances. Apart from the include path (which DAViCal will discover if it is anywhere
# 'normal') they are the default in newer PHP versions.
#
# php_value include_path /usr/share/awl/inc
# php_value magic_quotes_gpc 0
# php_value register_globals 0
# php_value error_reporting "E_ALL &amp; ~E_NOTICE"
# php_value default_charset "utf-8"
&lt;/VirtualHost&gt;
</pre>
<p>Replace 123.4.56.78 with your own IP address, of course (you can
use a name, but your webserver may fail on restart if DNS happens
to be borked at that time).</p>
<p>The various paths and names need to be changed to reflect your
own installation, although those are the recommended locations
for the various pieces of the code (and are standard if you
installed from a package.</p>
<p>Once your VHost is installed an working correctly, you should be
able to browse to that address and see a page telling you that
you need to configure DAViCal.</p>
<p>On Debian systems (or derivatives such as Ubuntu), when you are
using Apache 2, you should put this definition in the /etc/apache2/sites-available
directory and you can use the 'a2ensite' command to enable it.</p>
<h1>DAViCal Configuration</h1>
<p>The DAViCal configuration generally resides in /etc/davical/&lt;domain&gt;-conf.php
and is a regular PHP file which sets (or overrides) some specific variables.</p>
<pre>
&lt;?php
// $c-&gt;domain_name = "calendar.example.net";
// $c-&gt;sysabbr = 'DAViCal';
// $c-&gt;admin_email = 'admin@example.net';
// $c-&gt;system_name = "Example DAViCal Server";
// $c-&gt;enable_row_linking = true;
$c-&gt;pg_connect[] = 'dbname=davical port=5432 user=davical_app';
</pre>
<p>See the wiki for the full list of <a href="http://wiki.davical.org/w/Configuration_settings">DAViCal configuration settings</a>.</p>
<p>Multiple values may be specified for the PostgreSQL connect string,
so that you can (e.g.) use PGPool to cache the database connection
but fall back to a raw database connection if it is not running.</p>
<p>You should set the 'domain_name' and 'admin_email' as they are used
within the system for constructing URLs, and for notifying some
kinds of events.</p>
<p>If you are in a non-English locale, you can set the default_locale
configuration to one of the supported locales.</p>
<h1>Supported Locales</h1>
<p>At present the following locales are supported:</p>
<ul>
<li>English</li>
<li>German / Deutsch</li>
<li>Spanish / Español</li>
<li>French / Français</li>
<li>Russian / Русский</li>
<li>Netherlands / Nederlands</li>
<li>Polish / Polski</li>
<li>Hungarian / Magyar</li>
<li>Japanese / 日本語</li>
<li>Italian / Italiano</li>
<li>Swedish / Svenska</li>
</ul>
<p>If you want locale support you probably know more about configuring it than me, but
at this stage it should be noted that all translations are UTF-8, and pages are
served as UTF-8, so you will need to ensure that the UTF-8 versions of these locales
are supported on your system.</p>
<h1>Completed?</h1>
<p>If all is going well you should now be able to browse to the admin
pages and log in as 'admin' (the password is the bit after the '**'
in the 'password' field of the 'usr' table so:</p>
<pre>
psql davical -c 'select username, password from usr;'
</pre>
<p>should show you a list. Note that once you change a password it
won't be readable in this way - only the initial configuration
leaves passwords readable like this for security reasons.</p>
<p>Check the '/setup.php' page in your installation and if everything
is working then you should be ready to configure a client
to use your new DAViCal installation, and the docs for that are elsewhere.</p>
<p>If you had to do something else that is not covered here, or if you have any other notes
you want to add to help others through the installation process, please write something up
about your experiences in the Wiki, including distribution specific notes, to pages somewhere under here:
<a href="http://wiki.davical.org/w/Installation_Stuff">http://wiki.davical.org/w/Installation_Stuff</a></p>
<h1>Upgrades</h1>
<p>Whenever you upgrade the DAViCal application to a new version you will need to
run dba/update-davical-database which will apply any pending database patches, as well as
enabling new translations, loading database views and functions, and setting application
permissions to database tables.</p>
<p>When the database is created all the tables are owned by a 'davical_dba' user which
you will also want to add access for in your pg_hba.conf, although in that case you
may want to set the user to have a password, since it has full control over the DAViCal
database structure and content.</p>
<p>See <a href="http://wiki.davical.org/w/Update-davical-database">http://wiki.davical.org/w/Update-davical-database</a> for more information.</p>
<?php
include("inc/page-footer.php");

View File

@ -1,251 +0,0 @@
* {
margin: 0px;
padding: 0px;
}
body {
margin: 0px;
padding: 0px;
background-color: #FFFFFF;
color: #333333;
}
hr {
height: 0.4em;
width: 100%;
background-color: #000000;
border: none;
color:#000000;
margin-bottom: 0.5em;
}
#pageContainer {
width: 740px;
margin-left: auto;
margin-right: auto;
}
#header {
width: 740px;
height: 80px;
background: url(images/logo.gif) #bb1f1f no-repeat center left;
margin-top: 10px;
border-bottom: #d2d2d2 solid 5px;
text-align: right;
margin-bottom: 20px;
}
#headerLinks {
color: #FFFFFF;
font-family: helvetica, arial, sans-serif;
font-size: 8pt;
font-size: 80%;
padding-top: 64px;
padding-right: 5px;
display:block;
text-decoration: none;
}
.hlink {
color: #FFFFFF;
font-family: helvetica, arial, sans-serif;
font-size: 8pt;
font-size: 80%;
text-decoration: none;
}
.hlink:link, .hlink:active, .hlink:visited {
color: #FFFFFF;
}
.hlink:hover {
color: #FFFFFF;
text-decoration: underline;
}
#pageContent {
/* Not used for anything at present */
}
h1 {
color: #600000;
font-family: helvetica, arial, sans-serif;
font-size: 135%;
margin-top: 1em;
margin-bottom: 0.3em;
}
h2, h3 {
color: black;
font-family: helvetica, arial, sans-serif;
font-size: 115%;
margin-top: 1em;
margin-bottom: 0.3em;
}
h3 {
font-size: 100%;
}
.showcase {
margin: 2px;
padding: 2px;
border: 2px #000000 solid;
}
p {
font-family: helvetica, arial, sans-serif;
font-size: 8pt;
font-size: 90%;
margin-bottom: 20px;
}
ol, ul {
margin-bottom: 20px;
}
ul {
list-style-type: square;
font-family: helvetica, arial, sans-serif;
}
li {
list-style-position: outside;
font-family: helvetica, arial, sans-serif;
font-size: 90%;
margin: 0.1em 2em;
}
code {
font-family: courier, courier new, fixed;
font-size: inherit;
}
pre {
font-family: courier, courier new, fixed;
font-size: 90%;
padding: 1em;
margin-bottom: 1em;
background-color: #eee;
}
#footer {
clear: both;
width: 740px;
font-family: helvetica, arial, sans-serif;
font-size: 8pt;
font-size: 80%;
border-top: 2px #000000 solid;
}
#title {
float: left;
color: #FFFFFF;
padding-left: 100px;
margin-top: 1px;
font-family: helvetica, arial, sans-serif;
font-size: 190%;
}
#subTitle {
float: left;
clear: left;
color: #FFFFFF;
padding-left: 102px;
font-family: helvetica, arial, sans-serif;
font-size: 8pt;
font-size: 75%;
}
.right {
float: right;
margin: 0px;
}
.left {
float: left;
margin: 0px;
}
.flink:link {
color: #333333;
font-family: helvetica, arial, sans-serif;
font-size: 8pt;
font-size: 80%;
text-decoration: none;
vertical-align: text-top;
}
.flink:active {
color: #333333;
font-family: helvetica, arial, sans-serif;
font-size: 8pt;
font-size: 80%;
text-decoration: none;
vertical-align: text-top;
}
.flink:hover {
color: #333333;
font-family: helvetica, arial, sans-serif;
font-size: 8pt;
font-size: 80%;
text-decoration: underline;
vertical-align: text-top;
}
.flink:visited {
color: #333333;
font-family: helvetica, arial, sans-serif;
font-size: 8pt;
font-size: 80%;
text-decoration: none;
vertical-align: text-top;
}
.gone {
width: 0.01em;
height: 0.01em;
}
.prompt {
font-weight: 700;
width: 4em;
}
#leftSide {
width: 170px;
float: left;
}
#leftSide p {
text-align: center;
margin-bottom: 1em;
padding:0.3em 0;
font-weight: bold;
background-color: #d2d2d2;
}
#leftSide p.selected {
background-color: #bb1f1f;
color: white;
}
#leftSide img {
border: none;
}
#leftSide a, #leftSide a:link, #leftSide a:hover, #leftSide a:active, #leftSide a:visited {
text-decoration: none;
color: black;
}
#leftSide a.selected, #leftSide a.selected:link, #leftSide a.selected:hover, #leftSide a.selected:active, #leftSide a.selected:visited {
text-decoration: none;
color: white;
}
#rightSide {
width: 530px;
float: right;
}

View File

@ -1,67 +0,0 @@
#logo {
height: 80px;
width: 99.9%;
background: url(images/logo.gif) #bb1f1f no-repeat center left;
margin-left: 0px;
margin-top: 0px;
border-bottom: #d2d2d2 solid 5px;
text-align: right;
margin-bottom: 5px;
font-family: helvetica, arial, serif;
font-weight: normal;
font-size: 1em;
color: #FFFFFF;
display:block;
}
#title {
float: left;
color: #FFFFFF;
padding-left: 100px;
margin-top: 10px;
font-size: 190%;
}
#subTitle {
float: left;
clear: left;
color: #FFFFFF;
padding-left: 102px;
padding-top: 3px;
margin-top: 5px;
font-size: 75%;
}
#headerLinks {
color: #FFFFFF;
font-family: helvetica, arial, sans-serif;
font-size: 65%;
padding-top: 60px;
padding-right: 5px;
}
#headerLinks .hlink {
color: #FFFFFF;
}
#headerLinks .hlink:link {
color: #FFFFFF;
text-decoration: none;
}
#headerLinks .hlink:active {
color: #FFFFFF;
text-decoration: none;
}
#headerLinks .hlink:hover {
color: #FFFFFF;
text-decoration: underline;
}
#headerLinks .hlink:visited {
color: #FFFFFF;
}