X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=webcit-ng%2Fserver%2Fcaldav_reports.c;h=de35081a8de8df3310db77ab3a6f68aa3a0d16ff;hb=c552978c0ea0ab081a32d7c29ba62d4c0e8aad60;hp=d253b777b602ce03d12c8514c61b3ee829c70265;hpb=88c85ddb9e714faa214de6b103ed5bbf8d0bedea;p=citadel.git diff --git a/webcit-ng/server/caldav_reports.c b/webcit-ng/server/caldav_reports.c index d253b777b..de35081a8 100644 --- a/webcit-ng/server/caldav_reports.c +++ b/webcit-ng/server/caldav_reports.c @@ -234,11 +234,23 @@ void caldav_report(struct http_transaction *h, struct ctdlsession *c) { // RFC4791 7.8 "calendar-query" REPORT - Client will send a lot of search criteria. if (crp.report_type == cr_calendar_query) { - // FIXME build this REPORT. At the moment we send an empty multistatus. + int i = 0; + Array *msglist = get_msglist(c, "ALL"); + if (msglist != NULL) { + for (i = 0; i < array_len(msglist); ++i) { + long m; + memcpy(&m, array_get_element_at(msglist, i), sizeof(long)); + TRACE; + syslog(LOG_DEBUG, "evaluating message %ld", m); + } + array_free(msglist); + } } // RFC4791 7.9 "calendar-multiget" REPORT - go get the specific Hrefs the client asked for. + // Can we move this back into citserver too? else if ( (crp.report_type == cr_calendar_multiget) && (crp.Hrefs != NULL) ) { + StrBuf *ThisHref = NewStrBuf(); const char *pvset = NULL; while (StrBufExtract_NextToken(ThisHref, crp.Hrefs, &pvset, '|') >= 0) {