From ea0a62fbe25bf6e979d34a5ee908409c6b82f07b Mon Sep 17 00:00:00 2001 From: ce72 Date: Mon, 27 Feb 2023 21:39:23 +0100 Subject: [PATCH] fix: make sure labels are always exported as caldav Labels were not added to tasks for requests like /dav/lists/{listId}/{taskId} --- pkg/models/tasks.go | 13 +++++++++++++ pkg/routes/caldav/listStorageProvider.go | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/pkg/models/tasks.go b/pkg/models/tasks.go index f51495b88..abde2e54e 100644 --- a/pkg/models/tasks.go +++ b/pkg/models/tasks.go @@ -548,6 +548,19 @@ func GetTaskSimple(s *xorm.Session, t *Task) (task Task, err error) { return } +// GetTask returns a task with extra data +func GetTask(s *xorm.Session, t *Task, a web.Auth) (task Task, err error) { + task = *t + task, err = GetTaskSimple(s, t) + if err != nil { + return + } + taskMap := make(map[int64]*Task, 1) + taskMap[task.ID] = &task + err = addMoreInfoToTasks(s, taskMap, a) + return +} + // GetTasksByIDs returns all tasks for a list of ids func (bt *BulkTask) GetTasksByIDs(s *xorm.Session) (err error) { for _, id := range bt.IDs { diff --git a/pkg/routes/caldav/listStorageProvider.go b/pkg/routes/caldav/listStorageProvider.go index 0d1692c18..275e36c42 100644 --- a/pkg/routes/caldav/listStorageProvider.go +++ b/pkg/routes/caldav/listStorageProvider.go @@ -210,7 +210,7 @@ func (vcls *VikunjaCaldavListStorage) GetResource(rpath string) (*data.Resource, // save and override the updated unix date to not break any later etag checks updated := vcls.task.Updated - task, err := models.GetTaskSimple(s, &models.Task{ID: vcls.task.ID, UID: vcls.task.UID}) + task, err := models.GetTask(s, &models.Task{ID: vcls.task.ID, UID: vcls.task.UID}, vcls.user) if err != nil { _ = s.Rollback() if models.IsErrTaskDoesNotExist(err) {