diff --git a/internal/model/user.go b/internal/model/user.go index d9c79dd0..a79509a3 100644 --- a/internal/model/user.go +++ b/internal/model/user.go @@ -85,6 +85,6 @@ func (u User) CanWebdavRead() bool { return u.IsAdmin() || (u.Permission>>8)&1 == 1 } -func (u User) CanWebdavWrite() bool { +func (u User) CanWebdavManage() bool { return u.IsAdmin() || (u.Permission>>9)&1 == 1 } diff --git a/server/webdav.go b/server/webdav.go index 31da7822..6d879c27 100644 --- a/server/webdav.go +++ b/server/webdav.go @@ -79,7 +79,7 @@ func WebDAVAuth(c *gin.Context) { c.Abort() return } - if !user.CanWebdavWrite() && utils.SliceContains([]string{"PUT", "DELETE", "PROPPATCH", "MKCOL", "COPY", "MOVE"}, c.Request.Method) { + if !user.CanWebdavManage() && utils.SliceContains([]string{"PUT", "DELETE", "PROPPATCH", "MKCOL", "COPY", "MOVE"}, c.Request.Method) { if c.Request.Method == "OPTIONS" { c.Set("user", guest) c.Next()