diff options
author | Grégoire Jadi <gregoire.jadi@gmail.com> | 2013-02-25 16:06:01 +0100 |
---|---|---|
committer | Grégoire Jadi <gregoire.jadi@gmail.com> | 2013-02-27 13:27:00 +0100 |
commit | 0f76e8ca4261fae2ab47d1d5f869d2470861e1c2 (patch) | |
tree | d5c52c2dbed070389bc21e1f82a14029af1a79e1 | |
parent | 8506223b2788fa54d66db4e88d00605ddaa614d9 (diff) | |
download | org-mode-0f76e8ca4261fae2ab47d1d5f869d2470861e1c2.tar.gz |
org-contacts.el: Check if the database need a refresh in a dedicated function
* contrib/lisp/org-contacts.el (org-contacts-db-need-update?): New
function to determine whether we need to refresh `org-contacts-db'.
(org-contacts-db): Use `org-contacts-db-need-updated?'.
-rw-r--r-- | contrib/lisp/org-contacts.el | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/contrib/lisp/org-contacts.el b/contrib/lisp/org-contacts.el index 3ad581d..786650b 100644 --- a/contrib/lisp/org-contacts.el +++ b/contrib/lisp/org-contacts.el @@ -149,19 +149,21 @@ This overrides `org-email-link-description-format' if set." "Return list of Org files to use for contact management." (or org-contacts-files (org-agenda-files t 'ifmode))) +(defun org-contacts-db-need-update? () + "Determine whether `org-contacts-db' needs to be refreshed." + (or (null org-contacts-last-update) + (some (lambda (file) + (or (time-less-p org-contacts-last-update + (elt (file-attributes file) 5)))) + (org-contacts-files)))) + (defun org-contacts-db () "Return the latest Org Contacts Database" (let* (todo-only (contacts-matcher (cdr (org-make-tags-matcher org-contacts-matcher))) - (need-update? - (or (null org-contacts-last-update) - (some (lambda (file) - (time-less-p org-contacts-last-update - (elt (file-attributes file) 5))) - (org-contacts-files)))) markers result) - (when need-update? + (when (org-contacts-db-need-update?) (message "Update Org Contacts Database") (dolist (file (org-contacts-files)) (org-check-agenda-file file) |