[hotfix] Show Make button only for Email communication (#10876)
diff --git a/erpnext/public/js/communication.js b/erpnext/public/js/communication.js
index 5ce57b6..bb2eaef 100644
--- a/erpnext/public/js/communication.js
+++ b/erpnext/public/js/communication.js
@@ -1,39 +1,45 @@
frappe.ui.form.on("Communication", {
- refresh: function(frm) {
+ refresh: (frm) => {
+ // setup custom Make button only if Communication is Email
+ if(frm.doc.communication_medium == "Email" && frm.doc.sent_or_received == "Received") {
+ frm.events.setup_custom_buttons(frm);
+ }
+ },
+
+ setup_custom_buttons: (frm) => {
+ let confirm_msg = "Are you sure you want to create {0} from this email";
if(frm.doc.reference_doctype !== "Issue") {
- frm.add_custom_button(__("Issue"), function() {
- frappe.confirm("Are you sure you want to create Issue from this email", function(){
+ frm.add_custom_button(__("Issue"), () => {
+ frappe.confirm(__(confirm_msg, [__("Issue")]), () => {
frm.trigger('make_issue_from_communication');
})
}, "Make");
}
if(!in_list(["Lead", "Opportunity"], frm.doc.reference_doctype)) {
- frm.add_custom_button(__("Lead"), function() {
- frappe.confirm("Are you sure you want to create Lead from this email", function(){
+ frm.add_custom_button(__("Lead"), () => {
+ frappe.confirm(__(confirm_msg, [__("Lead")]), () => {
frm.trigger('make_lead_from_communication');
})
}, "Make");
- frm.add_custom_button(__("Opportunity"), function() {
- frappe.confirm("Are you sure you want to create Opportunity from this email", function(){
+ frm.add_custom_button(__("Opportunity"), () => {
+ frappe.confirm(__(confirm_msg, [__("Opportunity")]), () => {
frm.trigger('make_opportunity_from_communication');
})
}, "Make");
}
-
-
frm.page.set_inner_btn_group_as_primary(__("Make"));
},
- make_lead_from_communication: function(frm) {
+ make_lead_from_communication: (frm) => {
return frappe.call({
method: "frappe.email.inbox.make_lead_from_communication",
args: {
communication: frm.doc.name
},
freeze: true,
- callback: function(r) {
+ callback: (r) => {
if(r.message) {
frm.reload_doc()
}
@@ -41,14 +47,14 @@
})
},
- make_issue_from_communication: function(frm) {
+ make_issue_from_communication: (frm) => {
return frappe.call({
method: "frappe.email.inbox.make_issue_from_communication",
args: {
communication: frm.doc.name
},
freeze: true,
- callback: function(r) {
+ callback: (r) => {
if(r.message) {
frm.reload_doc()
}
@@ -56,14 +62,14 @@
})
},
- make_opportunity_from_communication: function(frm) {
+ make_opportunity_from_communication: (frm) => {
return frappe.call({
method: "frappe.email.inbox.make_opportunity_from_communication",
args: {
communication: frm.doc.name
},
freeze: true,
- callback: function(r) {
+ callback: (r) => {
if(r.message) {
frm.reload_doc()
}