diff --git a/crm/api/__init__.py b/crm/api/__init__.py index 0039c426..533a30c0 100644 --- a/crm/api/__init__.py +++ b/crm/api/__init__.py @@ -1,5 +1,7 @@ +from bs4 import BeautifulSoup import frappe from frappe.translate import get_all_translations +from frappe.utils import cstr @frappe.whitelist(allow_guest=True) @@ -9,4 +11,37 @@ def get_translations(): else: language = frappe.db.get_single_value("System Settings", "language") - return get_all_translations(language) \ No newline at end of file + return get_all_translations(language) + + +@frappe.whitelist() +def get_user_signature(): + user = frappe.session.user + user_email_signature = ( + frappe.db.get_value( + "User", + user, + "email_signature", + ) + if user + else None + ) + + signature = user_email_signature or frappe.db.get_value( + "Email Account", + {"default_outgoing": 1, "add_signature": 1}, + "signature", + ) + + if not signature: + return + + soup = BeautifulSoup(signature, "html.parser") + html_signature = soup.find("div", {"class": "ql-editor read-mode"}) + _signature = None + if html_signature: + _signature = html_signature.renderContents() + content = "" + if (cstr(_signature) or signature): + content = f'

{signature}

' + return content \ No newline at end of file diff --git a/frontend/src/components/Activities.vue b/frontend/src/components/Activities.vue index 45c6ccf8..3bf06991 100644 --- a/frontend/src/components/Activities.vue +++ b/frontend/src/components/Activities.vue @@ -479,22 +479,26 @@
- +
+ +
- +
+ +
diff --git a/frontend/src/components/CommunicationArea.vue b/frontend/src/components/CommunicationArea.vue index b1a19b08..e98ec6a1 100644 --- a/frontend/src/components/CommunicationArea.vue +++ b/frontend/src/components/CommunicationArea.vue @@ -1,5 +1,5 @@