summaryrefslogtreecommitdiffstats
path: root/emacsconf-schedule.el
diff options
context:
space:
mode:
authorSacha Chua <sacha@sachachua.com>2023-10-10 10:23:03 -0400
committerSacha Chua <sacha@sachachua.com>2023-10-10 10:23:03 -0400
commit0c6c8d8b6f29e310154323cf7806874c28040702 (patch)
tree6f8b5dc10dd4946a3296d2640e1532a291146c02 /emacsconf-schedule.el
parentd8881dbc1333a68644b5d9808a7471ba9ab25194 (diff)
downloademacsconf-el-0c6c8d8b6f29e310154323cf7806874c28040702.tar.xz
emacsconf-el-0c6c8d8b6f29e310154323cf7806874c28040702.zip
save emailed times
Diffstat (limited to 'emacsconf-schedule.el')
-rw-r--r--emacsconf-schedule.el13
1 files changed, 13 insertions, 0 deletions
diff --git a/emacsconf-schedule.el b/emacsconf-schedule.el
index 80eb616..071a3d4 100644
--- a/emacsconf-schedule.el
+++ b/emacsconf-schedule.el
@@ -250,9 +250,22 @@ Pairs with `emacsconf-schedule-dump-sexp'."
(mapc (lambda (talk)
(emacsconf-go-to-talk (plist-get talk :slug))
(org-entry-put (point) "SCHEDULED" (plist-get talk :scheduled))
+ (org-entry-put (point) "TRACK" (plist-get talk :track))
(org-entry-put (point) "TIME" (plist-get talk :time)))
(emacsconf-filter-talks info)))))
+(defun emacsconf-schedule-save-emailed-times (info &optional force)
+ (interactive (list (or emacsconf-schedule-draft (emacsconf-get-talk-info)) current-prefix-arg))
+ (save-window-excursion
+ (save-excursion
+ (mapc (lambda (talk)
+ (emacsconf-go-to-talk (plist-get talk :slug))
+ (when (and (plist-get talk :scheduled)
+ (or force (null (org-entry-get (point) "ORIGINAL_SCHEDULE"))))
+ (org-entry-put (point) "ORIGINAL_SCHEDULE"
+ (replace-regexp-in-string "[<>]" "" (plist-get talk :scheduled)))))
+ (emacsconf-filter-talks info)))))
+
(defvar emacsconf-schedule-svg-modify-functions '(emacsconf-schedule-svg-color-by-track) "Functions to run to modify the display of each item.")
(defvar emacsconf-use-absolute-url nil "Non-nil means try to use absolute URLs.")
(defun emacsconf-schedule-svg-track (svg base-x base-y width height start-time end-time info)