aboutsummaryrefslogtreecommitdiff
path: root/plugins/carddav/carddav.go
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/carddav/carddav.go')
-rw-r--r--plugins/carddav/carddav.go16
1 files changed, 16 insertions, 0 deletions
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)
+}