summaryrefslogtreecommitdiff
path: root/gnus-icalendar-request.el
diff options
context:
space:
mode:
Diffstat (limited to 'gnus-icalendar-request.el')
-rw-r--r--gnus-icalendar-request.el16
1 files changed, 12 insertions, 4 deletions
diff --git a/gnus-icalendar-request.el b/gnus-icalendar-request.el
index 61b5078..863c5aa 100644
--- a/gnus-icalendar-request.el
+++ b/gnus-icalendar-request.el
@@ -31,12 +31,20 @@
(when (member role '("req" "opt"))
(format "ATTENDEE;PARTSTAT=NEEDS-ACTION;ROLE=%s-PARTICIPANT;RSVP=TRUE:mailto:%s" (upcase role) attendee)))
-(defun gnus-icalendar-event--create-attendee-list (req opt)
+(defun gnus-icalendar-event--create-attendee-list (req &optional opt role)
+ "Format a list of event attendees.
+
+REQ is a list of required attendees emails, OPT of optional
+attendees and ROLE can be used to override the REQ attendees
+role."
(concat
- (mapconcat (lambda (req) (gnus-icalendar-event--format-attendee req "req")) req "\n")
+ (when req
+ (mapconcat (lambda (req) (gnus-icalendar-event--format-attendee req (or role "req"))) req "\n"))
(when opt
- "\n"
- (mapconcat (lambda (opt) (gnus-icalendar-event--format-attendee opt "opt")) opt "\n"))))
+ (concat "\n"
+ (gnus-icalendar-event--create-attendee-list opt nil "opt"))
+ ;; (mapconcat (lambda (opt) (gnus-icalendar-event--format-attendee opt "opt")) opt "\n")
+ )))
(defun gnus-icalendar-event--ical-from-event (event)
(with-slots (summary description location organizer recur uid start-time end-time req-participants opt-participants) event