Initial multi-calendar/address book support

Thanks to the latest version of go-webdav, this is now a thing. A lot of
operations (like creating a calendar) are not yet supported. But the
basics work fine. Note that multi-calendar means that different users
can each have their own calenders. Resource sharing is not yet
implemented either.

Includes the adding of a lot of debug logs, as issues are otherwise
pretty hard to figure out. The logging still needs to be made more
consistent, and probably cleaned up a bit in some places.
This commit is contained in:
Conrad Hoffmann 2024-02-02 22:19:36 +01:00
parent 1d871b000a
commit a74c76857d
7 changed files with 347 additions and 155 deletions

View file

@ -58,7 +58,7 @@ func (u *tokidokiHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
}
}
if u.carddavBackend != nil {
path, err := u.carddavBackend.AddressbookHomeSetPath(r.Context())
path, err := u.carddavBackend.AddressBookHomeSetPath(r.Context())
if err != nil {
http.Error(w, http.StatusText(http.StatusBadRequest), http.StatusBadRequest)
} else {