branch: externals/ebdb
commit f3b9525540ec6b29d0ee257471f6e47e4ac6fc8d
Author: Eric Abrahamsen <[email protected]>
Commit: Eric Abrahamsen <[email protected]>
Temporarily abandon having record-change-name accept strings
* ebdb.el (ebdb-record-change-name): I've found no way to actually
make this work. I can't switch from a string argument to a
ebdb-field-name argument. There has to be some solution to this, but
I'm giving up for now.
* ebdb-mua.el (ebdb-annotate-message): Alter function to check for
name class explicity.
---
ebdb-mua.el | 12 +++++++++---
ebdb.el | 10 ----------
2 files changed, 9 insertions(+), 13 deletions(-)
diff --git a/ebdb-mua.el b/ebdb-mua.el
index 031ac3b..eeda7d7 100644
--- a/ebdb-mua.el
+++ b/ebdb-mua.el
@@ -865,6 +865,9 @@ Return the records matching ADDRESS or nil."
(record-class (if (eql (nth 3 address) 'organization)
'ebdb-record-organization
ebdb-default-record-class))
+ (name-class (if (eql record-class 'ebdb-record-organization)
+ 'ebdb-field-name-simple
+ ebdb-default-name-class))
(records (ebdb-message-search name mail))
created-p new-records)
(if (and (not records) (functionp update-p))
@@ -902,7 +905,8 @@ Return the records matching ADDRESS or nil."
;; Analyze the name part of the record.
(cond (created-p ; new record
- (ebdb-record-change-name record name))
+ (ebdb-record-change-name
+ record (ebdb-parse name-class name)))
((or (not name)
;; The following tests can differ for more complicated names
@@ -933,7 +937,8 @@ Return the records matching ADDRESS or nil."
(format "Keep name \"%s\" as an AKA? "
old-name))
(ebdb-record-insert-field
record (slot-value record 'name) 'aka)))
- (ebdb-record-change-name record name)
+ (ebdb-record-change-name
+ record (ebdb-parse name-class name))
(setq change-p 'name))
;; make new name an AKA?
@@ -998,7 +1003,8 @@ Return the records matching ADDRESS or nil."
(progn
(setq record (make-instance
ebdb-default-record-class))
(ebdb-db-add-record (car ebdb-db-list) record)
- (ebdb-record-change-name record name)
+ (ebdb-record-change-name
+ record (ebdb-parse name-class name))
(setq created-p t))))
(let ((mails (ebdb-record-mail record)))
diff --git a/ebdb.el b/ebdb.el
index cd720e6..eee4419 100644
--- a/ebdb.el
+++ b/ebdb.el
@@ -2479,11 +2479,6 @@ priority."
(push `(organizations . ,o) f-list)))
(cl-call-next-method record f-list all))
-(cl-defmethod ebdb-record-change-name ((record ebdb-record-person)
- (name string))
- (let ((new-name (ebdb-parse ebdb-default-name-class name)))
- (cl-call-next-method record new-name)))
-
(cl-defmethod ebdb-record-related ((_record ebdb-record-person)
(field ebdb-field-relation))
(ebdb-gethash (slot-value field 'rel-uuid) 'uuid))
@@ -2718,11 +2713,6 @@ appropriate person record."
(when org
(ebdb-record-adopt-role-fields record org t))))
-(cl-defmethod ebdb-record-change-name ((org ebdb-record-organization)
- (name string))
- (let ((new-name (ebdb-parse 'ebdb-field-name-simple name)))
- (cl-call-next-method org new-name)))
-
(cl-defmethod ebdb-record-related ((_record ebdb-record-organization)
(field ebdb-field-role))
(ebdb-gethash (slot-value field 'record-uuid) 'uuid))