From 109560211c93f7cee65f6c9a30543d7e3b60c8d9 Mon Sep 17 00:00:00 2001 From: Anand Doshi Date: Mon, 30 Jun 2014 10:46:10 +0530 Subject: [PATCH] Call update route in after rename only if condition field is enabled --- frappe/website/website_generator.py | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/frappe/website/website_generator.py b/frappe/website/website_generator.py index 2f1513757b..01e98b4905 100644 --- a/frappe/website/website_generator.py +++ b/frappe/website/website_generator.py @@ -36,21 +36,26 @@ class WebsiteGenerator(Document): {"ref_doctype":self.doctype, "docname": name or self.name}) def after_rename(self, olddn, newdn, merge): - self.update_route(self.get_route_docname()) + if self.is_condition_field_enabled(): + self.update_route(self.get_route_docname()) def on_trash(self): remove_sitemap(ref_doctype=self.doctype, docname=self.name) + def is_condition_field_enabled(self): + self.controller_module = load_doctype_module(self.doctype) + if hasattr(self.controller_module, "condition_field"): + return self.get(self.controller_module.condition_field) and True or False + else: + return True + def update_sitemap(self): # update route of all descendants route_docname = self.get_route_docname() - # check if "condtion_field" property is okay - self.controller_module = load_doctype_module(self.doctype) - if hasattr(self.controller_module, "condition_field"): - if not self.get(self.controller_module.condition_field): - frappe.delete_doc("Website Route", route_docname, ignore_permissions=True) - return + if not self.is_condition_field_enabled(): + frappe.delete_doc("Website Route", route_docname, ignore_permissions=True) + return if route_docname: self.update_route(route_docname)