diff --git a/htdocs/caldav.php b/htdocs/caldav.php
index 38558d68..eebe7e59 100644
--- a/htdocs/caldav.php
+++ b/htdocs/caldav.php
@@ -21,7 +21,7 @@ switch ( $request->method ) {
case 'PROPFIND': include_once("caldav-PROPFIND.php"); break;
case 'PROPPATCH': include_once("caldav-PROPPATCH.php"); break;
case 'MKCALENDAR': include_once("caldav-MKCALENDAR.php"); break;
- case 'MKCOL': include_once("caldav-MKCOL.php"); break;
+ case 'MKCOL': include_once("caldav-MKCALENDAR.php"); break;
case 'PUT': include_once("caldav-PUT.php"); break;
case 'GET': include_once("caldav-GET.php"); break;
case 'HEAD': include_once("caldav-GET.php"); break;
diff --git a/inc/caldav-MKCALENDAR.php b/inc/caldav-MKCALENDAR.php
index 8383984f..79273c5b 100644
--- a/inc/caldav-MKCALENDAR.php
+++ b/inc/caldav-MKCALENDAR.php
@@ -29,8 +29,8 @@ if ( $qry->rows != 0 ) {
$request->DoResponse( 412, "A collection already exists at that location." );
}
-$sql = "INSERT INTO collection ( user_no, parent_container, dav_name, dav_etag, dav_displayname, is_calendar, created, modified ) VALUES( ?, ?, ?, ?, ?, TRUE, current_timestamp, current_timestamp );";
-$qry = new PgQuery( $sql, $request->user_no, $parent_container, $request->path, md5($request->user_no. $request->path), $displayname );
+$sql = "INSERT INTO collection ( user_no, parent_container, dav_name, dav_etag, dav_displayname, is_calendar, created, modified ) VALUES( ?, ?, ?, ?, ?, ?, current_timestamp, current_timestamp );";
+$qry = new PgQuery( $sql, $request->user_no, $parent_container, $request->path, md5($request->user_no. $request->path), $displayname, ($request->method == 'MKCALENDAR') );
if ( $qry->Exec("MKCALENDAR",__LINE__,__FILE__) ) {
dbg_error_log( "MKCALENDAR", "New calendar '%s' created named '%s' for user '%d' in parent '%s'", $request->path, $displayname, $session->user_no, $parent_container);
diff --git a/inc/caldav-MKCOL.php b/inc/caldav-MKCOL.php
deleted file mode 100644
index 35683707..00000000
--- a/inc/caldav-MKCOL.php
+++ /dev/null
@@ -1,53 +0,0 @@
-
-* @copyright Catalyst .Net Ltd
-* @license http://gnu.org/copyleft/gpl.html GNU GPL v2
-*/
-dbg_error_log("MKCOL", "method handler");
-
-if ( ! isset($permissions['write']) ) {
- header("HTTP/1.1 403 Forbidden");
- header("Content-type: text/plain");
- echo "You may not create a calendar there.";
- dbg_error_log("ERROR", "MKCOL Access denied for User: %d, Path: %s", $session->user_no, $request_path);
- return;
-}
-
-$displayname = $request_path;
-$parent_container = '/';
-if ( preg_match( '#^(.*/)([^/]+)(/)?$#', $request_path, $matches ) ) {
- $parent_container = $matches[1];
- $displayname = $matches[2];
-}
-
-$sql = "SELECT * FROM collection WHERE user_no = ? AND dav_name = ?;";
-$qry = new PgQuery( $sql, $path_user_no, $request_path );
-if ( ! $qry->Exec("MKCOL") ) {
- header("HTTP/1.1 500 Infernal Server Error");
- dbg_error_log( "ERROR", " MKCOL Failed (database error) for '%s' named '%s', user '%d' in parent '%s'", $request_path, $displayname, $session->user_no, $parent_container);
- exit(0);
-}
-if ( $qry->rows != 0 ) {
- header("HTTP/1.1 412 Collection Already Exists");
- dbg_error_log( "ERROR", " MKCOL Failed (already exists) for '%s' named '%s', user '%d' in parent '%s'", $request_path, $displayname, $session->user_no, $parent_container);
- exit(0);
-}
-
-$sql = "INSERT INTO collection ( user_no, parent_container, dav_name, dav_etag, dav_displayname, is_calendar, created, modified ) VALUES( ?, ?, ?, ?, ?, FALSE, current_timestamp, current_timestamp );";
-$qry = new PgQuery( $sql, $path_user_no, $parent_container, $request_path, md5($path_user_no. $request_path), $displayname );
-
-if ( $qry->Exec("MKCOL",__LINE__,__FILE__) ) {
- header("HTTP/1.1 200 Created");
- dbg_error_log( "MKCOL", "New collection '%s' created named '%s' for user '%d' in parent '%s'", $request_path, $displayname, $session->user_no, $parent_container);
-}
-else {
- header("HTTP/1.1 500 Infernal Server Error");
- dbg_error_log( "ERROR", " MKCOL Failed for '%s' named '%s', user '%d' in parent '%s'", $request_path, $displayname, $session->user_no, $parent_container);
-}
-
-?>
\ No newline at end of file
diff --git a/rscds.webprj b/rscds.webprj
index 265a8c74..3925e338 100644
--- a/rscds.webprj
+++ b/rscds.webprj
@@ -46,7 +46,6 @@
-