From ee45ccbd1e6ad38636bc2a38098378603694e210 Mon Sep 17 00:00:00 2001 From: Andrew McMillan Date: Sat, 26 Dec 2009 11:52:44 +1300 Subject: [PATCH] Fix implementation of need-privileges. --- inc/CalDAVRequest.php | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/inc/CalDAVRequest.php b/inc/CalDAVRequest.php index 9420de9c..10a84829 100644 --- a/inc/CalDAVRequest.php +++ b/inc/CalDAVRequest.php @@ -1110,15 +1110,14 @@ EOSQL; if ( $this->AllowedTo($privilege) ) return; } - $reply = new XMLDocument(); + $reply = new XMLDocument( array('DAV:' => '') ); + $privnode = new XMLElement( 'privilege' ); + $reply->NSElement( $privnode, $privilege ); $xml = new XMLElement( 'need-privileges', - new XMLElement( 'resource', array( - $reply->href( ConstructURL($href) ), - new XMLElement( 'privilege', $reply->NSElement( $privilege ) ), - )) + new XMLElement( 'resource', array( $reply->href(ConstructURL($href)), $privnode) ) ); $xmldoc = $reply->Render('error',$xml); - $this->DoResponse( $status, $xmldoc, 'text/xml; charset="utf-8"' ); + $this->DoResponse( 403, $xmldoc, 'text/xml; charset="utf-8"' ); exit(0); // Unecessary, but might clarify things }