summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRasmus <rasmus@gmx.us>2013-04-03 13:54:17 +0200
committerBastien Guerry <bzg@altern.org>2013-04-03 13:54:17 +0200
commit04b13a0e0ea00295d140463db34f2875e835e2f4 (patch)
treeff85a3697766918025cac5d78a4bdd6d62b9a599
parenta597a8b62282c484504bc9fa71a67b87ffde402a (diff)
downloadorg-mode-04b13a0e0ea00295d140463db34f2875e835e2f4.tar.gz
contrib/lisp/org-bbdb.el: Use `bbdb-record-xfield' when available
* contrib/lisp/org-bbdb.el (bbdb-record-xfield): Declare. (org-bbdb-make-anniv-hash): Use it and fall back on `bbdb-record-note' if not defined. TINYCHANGE
-rw-r--r--lisp/org-bbdb.el11
1 files changed, 8 insertions, 3 deletions
diff --git a/lisp/org-bbdb.el b/lisp/org-bbdb.el
index a45a26f..8a26dcd 100644
--- a/lisp/org-bbdb.el
+++ b/lisp/org-bbdb.el
@@ -116,8 +116,10 @@
(declare-function bbdb-search-name "ext:bbdb-com" (regexp &optional layout))
(declare-function bbdb-search-organization "ext:bbdb-com" (regexp &optional layout))
-;; `bbdb-record-note' is part of BBDB v3.x
+;; `bbdb-record-xfield' was part of BBDB v3.x
(declare-function bbdb-record-note "ext:bbdb" (record label))
+;; `bbdb-record-xfield' replaces it in recent BBDB v3.x+
+(declare-function bbdb-record-xfield "ext:bbdb" (record label))
(declare-function calendar-leap-year-p "calendar" (year))
(declare-function diary-ordinal-suffix "diary-lib" (n))
@@ -306,14 +308,17 @@ The hash table is created on first use.")
"Create a hash with anniversaries extracted from BBDB, for fast access.
The anniversaries are assumed to be stored `org-bbdb-anniversary-field'."
(let ((old-bbdb (fboundp 'bbdb-record-getprop))
+ (record-func (if (fboundp 'bbdb-record-xfield)
+ 'bbdb-record-xfield
+ 'bbdb-record-note))
split tmp annivs)
(clrhash org-bbdb-anniv-hash)
(dolist (rec (bbdb-records))
(when (setq annivs (if old-bbdb
(bbdb-record-getprop
rec org-bbdb-anniversary-field)
- (bbdb-record-note
- rec org-bbdb-anniversary-field)))
+ (funcall record-func
+ rec org-bbdb-anniversary-field)))
(setq annivs (if old-bbdb
(bbdb-split annivs "\n")
;; parameter order is reversed in new bbdb