From 068f0560e46e54e8b77b8154fc9f551fbd28bf17 Mon Sep 17 00:00:00 2001 From: Danny Date: Wed, 31 Aug 2022 12:04:13 -0400 Subject: [PATCH] Issue #501: Event support (#704) Added EventRecurs as option for backup details. --- src/internal/connector/exchange/event.go | 19 +++++++++++++------ src/pkg/backup/details/details.go | 1 + 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/internal/connector/exchange/event.go b/src/internal/connector/exchange/event.go index e39bc46ce..c30a5ec76 100644 --- a/src/internal/connector/exchange/event.go +++ b/src/internal/connector/exchange/event.go @@ -11,9 +11,11 @@ import ( // EventInfo searchable metadata for stored event objects. func EventInfo(evt models.Eventable) *details.ExchangeInfo { - organizer := "" - subject := "" - start := time.Time{} + var ( + organizer, subject string + recurs bool + start = time.Time{} + ) if evt.GetOrganizer() != nil && evt.GetOrganizer().GetEmailAddress() != nil && @@ -27,6 +29,10 @@ func EventInfo(evt models.Eventable) *details.ExchangeInfo { subject = *evt.GetSubject() } + if evt.GetRecurrence() != nil { + recurs = true + } + if evt.GetStart() != nil && evt.GetStart().GetDateTime() != nil { // timeString has 'Z' literal added to ensure the stored @@ -40,8 +46,9 @@ func EventInfo(evt models.Eventable) *details.ExchangeInfo { } return &details.ExchangeInfo{ - Organizer: organizer, - Subject: subject, - EventStart: start, + Organizer: organizer, + Subject: subject, + EventStart: start, + EventRecurs: recurs, } } diff --git a/src/pkg/backup/details/details.go b/src/pkg/backup/details/details.go index 9459fabed..42cbb7f8f 100644 --- a/src/pkg/backup/details/details.go +++ b/src/pkg/backup/details/details.go @@ -142,6 +142,7 @@ type ExchangeInfo struct { EventStart time.Time `json:"eventStart,omitempty"` Organizer string `json:"organizer,omitempty"` ContactName string `json:"contactName,omitempty"` + EventRecurs bool `json:"eventRecurs,omitempty"` } // Headers returns the human-readable names of properties in an ExchangeInfo