mirror of
https://gitlab.com/davical-project/davical.git
synced 2026-01-27 00:33:34 +00:00
Start writing a handler for public read-only access.
This commit is contained in:
parent
5c4b290734
commit
016cd734ad
52
htdocs/public.php
Normal file
52
htdocs/public.php
Normal file
@ -0,0 +1,52 @@
|
||||
<?php
|
||||
/**
|
||||
* CalDAV Server - main program
|
||||
*
|
||||
* @package davical
|
||||
* @subpackage caldav
|
||||
* @author Andrew McMillan <andrew@catalyst.net.nz>
|
||||
* @copyright Catalyst .Net Ltd
|
||||
* @license http://gnu.org/copyleft/gpl.html GNU GPL v2
|
||||
*/
|
||||
require_once("../inc/always.php");
|
||||
dbg_error_log( "caldav", " User agent: %s", ((isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : "Unfortunately Mulberry does not send a 'User-agent' header with its requests :-(")) );
|
||||
dbg_log_array( "headers", '_SERVER', $_SERVER, true );
|
||||
$session = (object) array(
|
||||
'username' => 'public',
|
||||
'user_no' => -1
|
||||
);
|
||||
|
||||
/** A simplified DAV header in this case */
|
||||
$dav = "1, 2, calendar-access";
|
||||
header( "DAV: $dav");
|
||||
|
||||
require_once("CalDAVRequest.php");
|
||||
$request = new CalDAVRequest();
|
||||
|
||||
switch ( $request->method ) {
|
||||
case 'OPTIONS': include_once("caldav-OPTIONS.php"); break;
|
||||
case 'REPORT': include_once("caldav-REPORT.php"); break;
|
||||
case 'PROPFIND': include_once("caldav-PROPFIND.php"); break;
|
||||
case 'GET': include_once("caldav-GET.php"); break;
|
||||
case 'HEAD': include_once("caldav-GET.php"); break;
|
||||
|
||||
case 'PROPPATCH':
|
||||
case 'MKCALENDAR':
|
||||
case 'MKCOL':
|
||||
case 'PUT':
|
||||
case 'DELETE':
|
||||
case 'LOCK':
|
||||
case 'UNLOCK':
|
||||
$request->DoResponse( 403, translate('Anonymous users are not allowed to modify calendars') );
|
||||
break;
|
||||
|
||||
case 'TESTRRULE': include_once("test-RRULE.php"); break;
|
||||
|
||||
default:
|
||||
dbg_error_log( "caldav", "Unhandled request method >>%s<<", $request->method );
|
||||
dbg_log_array( "caldav", '_SERVER', $_SERVER, true );
|
||||
dbg_error_log( "caldav", "RAW: %s", str_replace("\n", "",str_replace("\r", "", $request->raw_post)) );
|
||||
}
|
||||
|
||||
$request->DoResponse( 500, translate("The application program does not understand that request.") );
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user