From f9ed8f46c37724abe870dd0935e140f312587e22 Mon Sep 17 00:00:00 2001 From: RitvikSardana Date: Wed, 29 Jan 2025 20:13:37 +0530 Subject: [PATCH] fix: duplicate entry while installing helpdesk --- helpdesk/__init__.py | 2 +- helpdesk/hooks.py | 1 - helpdesk/setup/install.py | 49 +++++++++++++-------------------------- 3 files changed, 17 insertions(+), 35 deletions(-) diff --git a/helpdesk/__init__.py b/helpdesk/__init__.py index 9c73af26b..3e8d9f946 100644 --- a/helpdesk/__init__.py +++ b/helpdesk/__init__.py @@ -1 +1 @@ -__version__ = "1.3.1" +__version__ = "1.4.0" diff --git a/helpdesk/hooks.py b/helpdesk/hooks.py index 6fca08d0f..11916e394 100644 --- a/helpdesk/hooks.py +++ b/helpdesk/hooks.py @@ -17,7 +17,6 @@ } ] -before_install = "helpdesk.setup.install.before_install" after_install = "helpdesk.setup.install.after_install" after_migrate = [ "helpdesk.search.build_index_in_background", diff --git a/helpdesk/setup/install.py b/helpdesk/setup/install.py index 6871db067..762cf3682 100644 --- a/helpdesk/setup/install.py +++ b/helpdesk/setup/install.py @@ -12,10 +12,6 @@ from .welcome_ticket import create_welcome_ticket -def before_install(): - add_support_redirect_to_tickets() - - def after_install(): add_default_categories_and_articles() add_default_ticket_priorities() @@ -33,38 +29,23 @@ def after_install(): add_property_setter() -def add_support_redirect_to_tickets(): - website_settings = frappe.get_doc("Website Settings") - - for route_redirects in website_settings.route_redirects: - if route_redirects.source == "support": - return - - website_settings.append( - "route_redirects", - { - "source": "support", - "target": "support/tickets", - "redirect_http_status": 301, - }, - ) - website_settings.save() - - def add_default_categories_and_articles(): - category = frappe.get_doc( - { - "doctype": "HD Article Category", - "category_name": DEFAULT_ARTICLE_CATEGORY, - } - ).insert() + category = frappe.db.exists("HD Article Category", DEFAULT_ARTICLE_CATEGORY) + if not category: + category = frappe.get_doc( + { + "doctype": "HD Article Category", + "category_name": DEFAULT_ARTICLE_CATEGORY, + } + ).insert() + category = category.name # TODO: create 4 articles sharing information about helpdesk frappe.get_doc( { "doctype": "HD Article", "title": "Introduction", "content": "Content for your Article", - "category": category.name, + "category": category, "published": False, } ).insert() @@ -73,7 +54,7 @@ def add_default_categories_and_articles(): def add_default_sla(): add_default_ticket_priorities() - add_default_holidy_list() + add_default_holiday_list() enable_track_service_level_agreement_in_support_settings() sla_doc = frappe.new_doc("HD Service Level Agreement") @@ -167,7 +148,9 @@ def add_default_sla(): sla_doc.insert() -def add_default_holidy_list(): +def add_default_holiday_list(): + if frappe.db.exists("HD Service Holiday List", "Default"): + return frappe.get_doc( { "doctype": "HD Service Holiday List", @@ -179,14 +162,14 @@ def add_default_holidy_list(): } ).insert() - frappe.db.commit() + # frappe.db.commit() def enable_track_service_level_agreement_in_support_settings(): support_settings = frappe.get_doc("HD Settings") support_settings.track_service_level_agreement = True support_settings.save() - frappe.db.commit() + # frappe.db.commit() def add_default_ticket_priorities():