diff --git a/frappe/core/doctype/communication/comment.py b/frappe/core/doctype/communication/comment.py index b5f0f141bc..ca98383f94 100644 --- a/frappe/core/doctype/communication/comment.py +++ b/frappe/core/doctype/communication/comment.py @@ -81,7 +81,17 @@ def notify_mentions(doc): return sender_fullname = get_fullname(frappe.session.user) - parent_doc_label = "{0} {1}".format(_(doc.reference_doctype), doc.reference_name) + title_field = frappe.get_meta(doc.reference_doctype).get_title_field() + title = doc.reference_name if title_field == "name" else \ + frappe.db.get_value(doc.reference_doctype, doc.reference_name, title_field) + + if title != doc.reference_name: + parent_doc_label = "{0}: {1} (#{2})".format(_(doc.reference_doctype), + title, doc.reference_name) + else: + parent_doc_label = "{0}: {1}".format(_(doc.reference_doctype), + doc.reference_name) + subject = _("{0} mentioned you in a comment").format(sender_fullname) recipients = [frappe.db.get_value("User", {"enabled": 1, "username": username, "user_type": "System User"}) diff --git a/frappe/model/meta.py b/frappe/model/meta.py index ba6508c637..69182cdeff 100644 --- a/frappe/model/meta.py +++ b/frappe/model/meta.py @@ -218,7 +218,7 @@ class Meta(Document): title_field = getattr(self, 'title_field', None) if not title_field and self.has_field('title'): title_field = 'title' - else: + if not title_field: title_field = 'name' return title_field