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?'.
This commit is contained in:
parent
e516efacb6
commit
a9b2eef66f
1 changed files with 9 additions and 7 deletions
|
@ -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)
|
||||
|
|
Loading…
Reference in a new issue