brotherton-erpnext/erpnext/public/js/utils/demo.js

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

72 lines
1.6 KiB
JavaScript
Raw Normal View History

2023-08-10 12:25:15 +00:00
$(document).on("toolbar_setup", function () {
2023-07-29 17:09:07 +00:00
if (frappe.boot.sysdefaults.demo_company) {
erpnext.setup_clear_button();
}
// for first load
frappe.realtime.on("demo_data_complete", () => {
erpnext.setup_clear_button();
2023-08-10 12:25:15 +00:00
});
});
2023-08-10 12:25:15 +00:00
erpnext.setup_clear_button = function () {
let message_string = __(
"Demo data is present on the system, erase data before starting real usage."
);
2023-07-29 17:09:07 +00:00
let $floatingBar = $(`
<div class="flex justify-content-center" style="width: 100%;">
<div class="flex justify-content-center flex-col shadow rounded p-2"
style="
background-color: #e0f2fe;
position: fixed;
bottom: 20px;
z-index: 1;">
<p style="margin: auto 0; padding-left: 10px; margin-right: 20px; font-size: 15px;">
${message_string}
</p>
<button id="clear-demo" type="button"
class="
px-4
py-2
border
border-transparent
text-white
"
style="
margin: auto 0;
height: fit-content;
background-color: #007bff;
border-radius: 5px;
margin-right: 10px
"
>
Clear Demo Data
2023-07-29 17:09:07 +00:00
</button>
</div>
</div>
`);
2023-08-10 12:25:15 +00:00
$("footer").append($floatingBar);
2023-07-29 17:09:07 +00:00
2023-08-10 12:25:15 +00:00
$("#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);
},
});
2023-07-29 17:09:07 +00:00
}
2023-08-10 12:25:15 +00:00
);
2023-07-29 17:09:07 +00:00
});
2023-08-10 12:25:15 +00:00
};