diff options
| author | Sacha Chua <sacha@sachachua.com> | 2025-12-03 15:12:23 -0500 |
|---|---|---|
| committer | Sacha Chua <sacha@sachachua.com> | 2025-12-03 15:12:23 -0500 |
| commit | 6043dbe9dbc499132c98fb87023aa53c5a3f3fbc (patch) | |
| tree | 56b91e850d794e954b649d154deb14e2b722fef8 | |
| parent | f7033806b5f496d426ba6324aed9978a84a9a39e (diff) | |
| download | emacsconf-el-6043dbe9dbc499132c98fb87023aa53c5a3f3fbc.tar.xz emacsconf-el-6043dbe9dbc499132c98fb87023aa53c5a3f3fbc.zip | |
schedule update: filter for no change
| -rw-r--r-- | emacsconf-mail.el | 27 | ||||
| -rw-r--r-- | emacsconf.el | 3 |
2 files changed, 23 insertions, 7 deletions
diff --git a/emacsconf-mail.el b/emacsconf-mail.el index 03db1fc..986743b 100644 --- a/emacsconf-mail.el +++ b/emacsconf-mail.el @@ -1633,14 +1633,15 @@ ${signature}")) (dolist (group groups) (emacsconf-mail-prepare (list - :subject "${conf-name} ${year}: Schedule update as of ${date}" + :subject "${conf-name} ${year}: Schedule update as of ${date}: ${summary}" :reply-to "emacsconf-submit@gnu.org, ${email}, ${user-email}" :mail-followup-to "emacsconf-submit@gnu.org, ${email}, ${user-email}" :log-note log-note :body "Hello, ${speakers-short}! -We tweaked the schedule a bit to adapt to some cancellations. Your new schedule is: +We tweaked the schedule a bit so that it's based on the current video lengths. +Your new schedule is: ${schedule} @@ -1657,6 +1658,20 @@ ${signature}") :email (plist-get (car (cdr group)) :email) :speakers-short (plist-get (car (cdr group)) :speakers-short) :signature user-full-name + :summary + (mapconcat + (lambda (talk) + (let ((minutes (emacsconf-schedule-difference-from-emailed talk))) + (if (> (abs minutes) 0) + (format "%s: %s min %s" + (plist-get talk :slug) + (abs minutes) + (if (< minutes 0) + "earlier" + "later")) + "same time, different length"))) + (cdr group) + "; ") :schedule (mapconcat (lambda (talk) (emacsconf-indent-string (emacsconf-mail-format-talk-schedule talk (plist-get talk :emailed-schedule)) 2)) @@ -1675,13 +1690,13 @@ ${signature}") :body "Hello, ${speakers-short}! -We tweaked the schedule a bit. Your new schedule is: + We tweaked the schedule a bit. Your new schedule is: -${schedule} + ${schedule} -Let us know if you need to reschedule! + Let us know if you need to reschedule! -${signature}") + ${signature}") (plist-get talk :email) (list :year emacsconf-year diff --git a/emacsconf.el b/emacsconf.el index 8eb749c..3e52257 100644 --- a/emacsconf.el +++ b/emacsconf.el @@ -2151,7 +2151,8 @@ With a prefix argument (\\[universal-argument]), open this year's notebook." (plist-get o :qa-type) (not (string= (plist-get o :emailed-schedule) (replace-regexp-in-string "[<>]" "" (plist-get o :scheduled)))) - (not (string= (plist-get o :qa-type) "none")))) + (not (string= (plist-get o :qa-type) "none")) + (not (= (emacsconf-schedule-difference-from-emailed o) 0)))) (emacsconf-publish-prepare-for-display (emacsconf-filter-talks (or info (emacsconf-get-talk-info)))))) (defun emacsconf-schedule-difference-from-emailed (talk) |
