From dddb39abb05624a3693fcea30281ed69679f47d4 Mon Sep 17 00:00:00 2001 From: Faris Ansari Date: Sat, 7 Sep 2019 12:50:38 +0530 Subject: [PATCH 1/2] fix: Fetch fullname from User then Contact --- .../core/doctype/communication/communication.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/frappe/core/doctype/communication/communication.py b/frappe/core/doctype/communication/communication.py index f9985cbc66..6db113b0d1 100644 --- a/frappe/core/doctype/communication/communication.py +++ b/frappe/core/doctype/communication/communication.py @@ -161,8 +161,22 @@ class Communication(Document): sender_name, sender_email = parse_addr(self.sender) if sender_name == sender_email: sender_name = None + self.sender = sender_email - self.sender_full_name = sender_name or frappe.db.exists("Contact", {"email_id": sender_email}) or sender_email + self.sender_full_name = sender_name + + if not self.sender_full_name: + self.sender_full_name = frappe.db.get_value('User', self.sender, 'full_name') + + if not self.sender_full_name: + first_name, last_name = frappe.db.get_value('Contact', + filters={'email_id': sender_email}, + fieldname=['first_name', 'last_name'] + ) + self.sender_full_name = (first_name or '') + (last_name or '') + + if not self.sender_full_name: + self.sender_full_name = sender_email def send(self, print_html=None, print_format=None, attachments=None, send_me_a_copy=False, recipients=None): From 183d87a73caadcf6d46a49397262e263ec4b54a8 Mon Sep 17 00:00:00 2001 From: Faris Ansari Date: Tue, 10 Sep 2019 13:52:35 +0530 Subject: [PATCH 2/2] fix: Fallback for first_name, last_name --- frappe/core/doctype/communication/communication.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frappe/core/doctype/communication/communication.py b/frappe/core/doctype/communication/communication.py index 6db113b0d1..9e2587bc82 100644 --- a/frappe/core/doctype/communication/communication.py +++ b/frappe/core/doctype/communication/communication.py @@ -172,7 +172,7 @@ class Communication(Document): first_name, last_name = frappe.db.get_value('Contact', filters={'email_id': sender_email}, fieldname=['first_name', 'last_name'] - ) + ) or [None, None] self.sender_full_name = (first_name or '') + (last_name or '') if not self.sender_full_name: