I want to change the comfirm message that appears when user click on submit how can i change
@saloni Please check it out function in your custom app
form.js file code
const FrappeForm = frappe.ui.form.Form
FrappeForm.prototype.savesubmit = function (btn, callback, on_error) {
var me = this;
return new Promise((resolve) => {
// Custom logic before submission (optional)
console.log("Custom logic before submission");
// Call the original save submit logic
this.validate_form_action("Submit");
frappe.confirm(
// change submit message from your message
__("Permanently Submit {0}?", [this.docname]),
function () {
frappe.validated = true;
me.script_manager.trigger("before_submit").then(function () {
if (!frappe.validated) {
return me.handle_save_fail(btn, on_error);
}
me.save(
"Submit",
function (r) {
if (r.exc) {
me.handle_save_fail(btn, on_error);
} else {
// Custom action after successful submission (optional)
console.log("Custom action after submit");
frappe.utils.play_sound("submit");
callback && callback();
me.script_manager
.trigger("on_submit")
.then(() => resolve(me))
.then(() => {
if (frappe.route_hooks.after_submit) {
let route_callback =
frappe.route_hooks.after_submit;
delete frappe.route_hooks.after_submit;
route_callback(me);
}
});
}
},
btn,
() => me.handle_save_fail(btn, on_error),
resolve
);
});
},
() => me.handle_save_fail(btn, on_error)
);
});
};
custom_app_name.bundle.js file create and add the below code and please make sure both form.js and custom_app_name.bundle.js file is put in your custom app public folder
import “./form.js”;
hooks.pt file
app_include_js = [“custom_app_name.bundle.js”]
then run this command
bench build
bench --site site_name clear-website-cache
bench --site site_name clear-cache
bench restart
1 Like
Thanks for reply…
I need to change the confirm messsage only in one doctype
Hello @saloni,
You can write condition for specific doctype as below.
savesubmit(btn, callback, on_error) {
var me = this;
return new Promise((resolve) => {
this.validate_form_action("Submit");
// Customize the confirmation message for a specific Doctype
let confirmation_message = __("Permanently Submit {0}?", [this.docname]);
if (me.doctype === "Custom Doctype Name") {
confirmation_message = __("Are you sure you want to submit this {0}?", [this.docname]);
}
frappe.confirm(
confirmation_message,
function () {
frappe.validated = true;
me.script_manager.trigger("before_submit").then(function () {
if (!frappe.validated) {
return me.handle_save_fail(btn, on_error);
}
me.save(
"Submit",
function (r) {
if (r.exc) {
me.handle_save_fail(btn, on_error);
} else {
frappe.utils.play_sound("submit");
callback && callback();
me.script_manager
.trigger("on_submit")
.then(() => resolve(me))
.then(() => {
if (frappe.route_hooks.after_submit) {
let route_callback =
frappe.route_hooks.after_submit;
delete frappe.route_hooks.after_submit;
route_callback(me);
}
});
}
},
btn,
() => me.handle_save_fail(btn, on_error),
resolve
);
});
},
() => me.handle_save_fail(btn, on_error)
);
});
}
1 Like