From fd6be0549df500d2092ad8d169135c87ae4ddff5 Mon Sep 17 00:00:00 2001 From: git-avc Date: Sun, 23 Nov 2025 13:38:09 +0100 Subject: [PATCH] feat: add ability to disable new product suggestion --- .../system_settings/system_settings.json | 9 ++++++- .../system_settings/system_settings.py | 1 + frappe/printing/page/print/print.js | 26 ++++++++++--------- frappe/public/js/frappe/list/list_sidebar.js | 12 +++++++++ 4 files changed, 35 insertions(+), 13 deletions(-) diff --git a/frappe/core/doctype/system_settings/system_settings.json b/frappe/core/doctype/system_settings/system_settings.json index 8218d10939..7eeed0415a 100644 --- a/frappe/core/doctype/system_settings/system_settings.json +++ b/frappe/core/doctype/system_settings/system_settings.json @@ -96,6 +96,7 @@ "disable_system_update_notification", "disable_change_log_notification", "hide_empty_read_only_fields", + "disable_product_suggestion", "backups_tab", "sec_backup_limit", "backup_limit", @@ -770,12 +771,18 @@ { "fieldname": "column_break_bzfr", "fieldtype": "Column Break" + }, + { + "default": "0", + "fieldname": "disable_product_suggestion", + "fieldtype": "Check", + "label": "Disable Product Suggestion" } ], "icon": "fa fa-cog", "issingle": 1, "links": [], - "modified": "2025-11-04 16:47:54.230874", + "modified": "2025-11-23 13:17:57.577690", "modified_by": "Administrator", "module": "Core", "name": "System Settings", diff --git a/frappe/core/doctype/system_settings/system_settings.py b/frappe/core/doctype/system_settings/system_settings.py index 93a81d4465..2ca4da1713 100644 --- a/frappe/core/doctype/system_settings/system_settings.py +++ b/frappe/core/doctype/system_settings/system_settings.py @@ -43,6 +43,7 @@ class SystemSettings(Document): deny_multiple_sessions: DF.Check disable_change_log_notification: DF.Check disable_document_sharing: DF.Check + disable_product_suggestion: DF.Check disable_standard_email_footer: DF.Check disable_system_update_notification: DF.Check disable_user_pass_login: DF.Check diff --git a/frappe/printing/page/print/print.js b/frappe/printing/page/print/print.js index c6e6fb019b..4888cb635e 100644 --- a/frappe/printing/page/print/print.js +++ b/frappe/printing/page/print/print.js @@ -198,18 +198,20 @@ frappe.ui.form.PrintView = class { this.setup_customize_dialog(); // print designer link - if (Object.keys(frappe.boot.versions).includes("print_designer")) { - this.page.add_inner_message(` - - ${__("Try the new Print Designer")} - - `); - } else { - this.page.add_inner_message(` - - ${__("Try the new Print Designer")} - - `); + if (frappe.boot.sysdefaults.disable_product_suggestion !== "1") { + if (Object.keys(frappe.boot.versions).includes("print_designer")) { + this.page.add_inner_message(` + + ${__("Try the new Print Designer")} + + `); + } else { + this.page.add_inner_message(` + + ${__("Try the new Print Designer")} + + `); + } } let tasks = [ this.set_default_print_format, diff --git a/frappe/public/js/frappe/list/list_sidebar.js b/frappe/public/js/frappe/list/list_sidebar.js index 64106d5e03..0c1a2bd7b1 100644 --- a/frappe/public/js/frappe/list/list_sidebar.js +++ b/frappe/public/js/frappe/list/list_sidebar.js @@ -294,6 +294,10 @@ frappe.views.ListSidebar = class ListSidebar { } add_insights_banner() { + if (frappe.boot.sysdefaults.disable_product_suggestion == "1") { + return; + } + if (this.list_view.view != "Report") { return; } @@ -309,6 +313,10 @@ frappe.views.ListSidebar = class ListSidebar { } add_crm_banner() { + if (frappe.boot.sysdefaults.disable_product_suggestion == "1") { + return; + } + if (this.list_view.meta.module != "CRM" || this.list_view.view != "List") { return; } @@ -321,6 +329,10 @@ frappe.views.ListSidebar = class ListSidebar { } add_helpdesk_banner() { + if (frappe.boot.sysdefaults.disable_product_suggestion == "1") { + return; + } + if (this.list_view.meta.module != "Support" || this.list_view.view != "List") { return; }