From bb5387fa5d0b1382783e08977058431059520fd3 Mon Sep 17 00:00:00 2001 From: Deepesh Garg Date: Fri, 7 Jul 2023 10:49:56 +0530 Subject: [PATCH] fix: Add demo setup check in setup wizard --- erpnext/public/build.json | 1 + erpnext/public/js/setup_wizard.js | 1 + erpnext/public/js/utils/demo.js | 11 +++++++++++ erpnext/setup/demo.py | 2 +- erpnext/setup/setup_wizard/setup_wizard.py | 11 +++++++++++ 5 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 erpnext/public/js/utils/demo.js diff --git a/erpnext/public/build.json b/erpnext/public/build.json index 3d38aca4186..04ecff15afc 100644 --- a/erpnext/public/build.json +++ b/erpnext/public/build.json @@ -20,6 +20,7 @@ "public/js/queries.js", "public/js/sms_manager.js", "public/js/utils/party.js", + "public/js/utils/demo.js", "public/js/controllers/stock_controller.js", "public/js/payment/payments.js", "public/js/controllers/taxes_and_totals.js", diff --git a/erpnext/public/js/setup_wizard.js b/erpnext/public/js/setup_wizard.js index a913844e186..a067ec0f4a4 100644 --- a/erpnext/public/js/setup_wizard.js +++ b/erpnext/public/js/setup_wizard.js @@ -38,6 +38,7 @@ erpnext.setup.slides_settings = [ { fieldname: 'fy_start_date', label: __('Financial Year Begins On'), fieldtype: 'Date', reqd: 1 }, // end date should be hidden (auto calculated) { fieldname: 'fy_end_date', label: __('End Date'), fieldtype: 'Date', reqd: 1, hidden: 1 }, + { fieldname: 'setup_demo', label: __('Generate dummy data for demo'), fieldtype: 'Check'}, ], onload: function (slide) { diff --git a/erpnext/public/js/utils/demo.js b/erpnext/public/js/utils/demo.js new file mode 100644 index 00000000000..432bad63239 --- /dev/null +++ b/erpnext/public/js/utils/demo.js @@ -0,0 +1,11 @@ +$(document).on("toolbar_setup", function() { + if (erpnext.is_demo_company_setup) { + console.log("setup"); + } +}); + +erpnext.is_demo_company_setup = function() { + frappe.db.get_value("Global Default", "Global Default", "demo_company", function(r) { + console.log(r); + }); +}; \ No newline at end of file diff --git a/erpnext/setup/demo.py b/erpnext/setup/demo.py index 46500da15c7..882ed37a92c 100644 --- a/erpnext/setup/demo.py +++ b/erpnext/setup/demo.py @@ -28,7 +28,7 @@ def clear_demo_data(): def create_demo_company(): - company = erpnext.get_default_company() + company = frappe.db.get_all("Company")[0].name company_doc = frappe.get_doc("Company", company) # Make a dummy company diff --git a/erpnext/setup/setup_wizard/setup_wizard.py b/erpnext/setup/setup_wizard/setup_wizard.py index 65b268e385c..ad49be647b0 100644 --- a/erpnext/setup/setup_wizard/setup_wizard.py +++ b/erpnext/setup/setup_wizard/setup_wizard.py @@ -5,6 +5,7 @@ import frappe from frappe import _ +from ..demo import setup_demo_data from .operations import install_fixtures as fixtures @@ -36,6 +37,11 @@ def get_setup_stages(args=None): {"fn": setup_defaults, "args": args, "fail_msg": _("Failed to setup defaults")}, ], }, + { + "status": _("Setting up demo data"), + "fail_msg": _("Failed to setup demo data"), + "tasks": [{"fn": setup_demo, "args": args, "fail_msg": _("Failed to login")}], + }, { "status": _("Wrapping up"), "fail_msg": _("Failed to login"), @@ -63,6 +69,11 @@ def fin(args): login_as_first_user(args) +def setup_demo(args): + if args.get("setup_demo"): + setup_demo_data() + + def login_as_first_user(args): if args.get("email") and hasattr(frappe.local, "login_manager"): frappe.local.login_manager.login_as(args.get("email"))