From 89149b38c8d10d4db457614450517e4ab6d57062 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Thu, 27 Feb 2020 12:17:23 +0100 Subject: plugins/carddav: use paths instead of UIDs in URLs --- plugins/carddav/carddav.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'plugins/carddav/carddav.go') diff --git a/plugins/carddav/carddav.go b/plugins/carddav/carddav.go index 0c1a06d..2509872 100644 --- a/plugins/carddav/carddav.go +++ b/plugins/carddav/carddav.go @@ -28,3 +28,19 @@ func newClient(u *url.URL, session *koushin.Session) (*carddav.Client, error) { } return carddav.NewClient(&http.Client{Transport: &rt}, u.String()) } + +type AddressObject struct { + *carddav.AddressObject +} + +func newAddressObjectList(aos []carddav.AddressObject) []AddressObject { + l := make([]AddressObject, len(aos)) + for i := range aos { + l[i] = AddressObject{&aos[i]} + } + return l +} + +func (ao AddressObject) URL() string { + return "/contacts/" + url.PathEscape(ao.Path) +} -- cgit v1.2.3-59-g8ed1b