diff --git a/htdocs/caldav.php b/htdocs/caldav.php index aa8e4d34..7d23adc7 100644 --- a/htdocs/caldav.php +++ b/htdocs/caldav.php @@ -67,11 +67,11 @@ else { $path_user_no = $path_user_record->user_no; } if ( $session->AllowedTo("Admin") ) { - $permissions = array('read' => 'read', "write" => 'write' ); + $permissions = array('read' => 'read', "write" => 'write', 'bind' => 'bind', 'unbind' => 'unbind' ); dbg_error_log( "caldav", "Full permissions for a systems administrator" ); } else if ( $session->user_no == $path_user_no ) { - $permissions = array('read' => 'read', "write" => 'write' ); + $permissions = array('read' => 'read', "write" => 'write', 'bind' => 'bind', 'unbind' => 'unbind' ); dbg_error_log( "caldav", "Full permissions for user accessing their own hierarchy" ); } else if ( isset($path_user_no) ) { @@ -84,6 +84,9 @@ else { $permissions = array(); if ( strpos($permission_result,"R") ) $permissions['read'] = 'read'; if ( strpos($permission_result,"W") ) $permissions['write'] = 'write'; + if ( strpos($permission_result,"C") ) $permissions['bind'] = 'bind'; // PUT of new content (i.e. Create) + if ( strpos($permission_result,"D") ) $permissions['unbind'] = 'unbind'; // DELETE + if ( strpos($permission_result,"M") ) $permissions['write-content'] = 'write-content'; // DELETE } dbg_error_log( "caldav", "Restricted permissions for user accessing someone elses hierarchy: read=%s, write=%s", isset($permissions['read']), isset($permissions['write']) ); }