fix: confirm before clearing demo data
diff --git a/erpnext/public/js/utils/demo.js b/erpnext/public/js/utils/demo.js
index e810c37..05866e9 100644
--- a/erpnext/public/js/utils/demo.js
+++ b/erpnext/public/js/utils/demo.js
@@ -1,4 +1,4 @@
-$(document).on("toolbar_setup", function() {
+$(document).on("toolbar_setup", function () {
if (frappe.boot.sysdefaults.demo_company) {
erpnext.setup_clear_button();
}
@@ -6,11 +6,13 @@
// for first load
frappe.realtime.on("demo_data_complete", () => {
erpnext.setup_clear_button();
- })
+ });
});
-erpnext.setup_clear_button = function() {
- let message_string = __("Demo data is present on the system, erase data before starting real usage.");
+erpnext.setup_clear_button = function () {
+ let message_string = __(
+ "Demo data is present on the system, erase data before starting real usage."
+ );
let $floatingBar = $(`
<div class="flex justify-content-center" style="width: 100%;">
<div class="flex justify-content-center flex-col shadow rounded p-2"
@@ -44,18 +46,26 @@
</div>
`);
- $('footer').append($floatingBar);
+ $("footer").append($floatingBar);
- $('#clear-demo').on('click', function () {
- frappe.call({
- method: "erpnext.setup.demo.clear_demo_data",
- freeze: true,
- freeze_message: __('Clearing Demo Data...'),
- callback: function(r) {
- frappe.ui.toolbar.clear_cache();
- frappe.show_alert({ message: __('Demo data cleared'), indicator: 'green' });
- $('footer').remove($floatingBar);
+ $("#clear-demo").on("click", function () {
+ frappe.confirm(
+ __("Are you sure you want to clear all demo data?"),
+ () => {
+ frappe.call({
+ method: "erpnext.setup.demo.clear_demo_data",
+ freeze: true,
+ freeze_message: __("Clearing Demo Data..."),
+ callback: function (r) {
+ frappe.ui.toolbar.clear_cache();
+ frappe.show_alert({
+ message: __("Demo data cleared"),
+ indicator: "green",
+ });
+ $("footer").remove($floatingBar);
+ },
+ });
}
- })
+ );
});
-}
+};