remove website route, wip
diff --git a/erpnext/setup/doctype/item_group/item_group.py b/erpnext/setup/doctype/item_group/item_group.py
index c6f49a1..40126e0 100644
--- a/erpnext/setup/doctype/item_group/item_group.py
+++ b/erpnext/setup/doctype/item_group/item_group.py
@@ -9,22 +9,16 @@
from frappe.website.render import clear_cache
from frappe.website.doctype.website_slideshow.website_slideshow import get_slideshow
-condition_field = "show_in_website"
-template = "templates/generators/item_group.html"
class ItemGroup(NestedSet, WebsiteGenerator):
nsm_parent_field = 'parent_item_group'
+ condition_field = "show_in_website"
+ template = "templates/generators/item_group.html"
+ parent_website_route_field = "parent_item_group"
def autoname(self):
self.name = self.item_group_name
- def validate(self):
- WebsiteGenerator.validate(self)
- if not self.parent_website_route:
- if frappe.db.get_value("Item Group", self.parent_item_group, "show_in_website"):
- self.parent_website_route = frappe.get_website_route("Item Group",
- self.parent_item_group)
-
def on_update(self):
NestedSet.on_update(self)
WebsiteGenerator.on_update(self)
@@ -60,14 +54,16 @@
child_groups = ", ".join(['"' + i[0] + '"' for i in get_child_groups(product_group)])
# base query
- query = """select t1.name, t1.item_name, t1.page_name, t1.website_image, t1.item_group,
- t1.web_long_description as website_description, t2.name as route
- from `tabItem` t1, `tabWebsite Route` t2
- where t1.show_in_website = 1 and (item_group in (%s)
- or t1.name in (select parent from `tabWebsite Item Group` where item_group in (%s)))
- and t1.name = t2.docname and t2.ref_doctype='Item' """ % (child_groups, child_groups)
+ query = """select name, item_name, page_name, website_image, item_group,
+ web_long_description as website_description,
+ concat(parent_website_route, "/", page_name) as route
+ from `tabItem`
+ where show_in_website = 1
+ and (item_group in (%s)
+ or name in (select parent from `tabWebsite Item Group` where item_group in (%s)))
+ """ % (child_groups, child_groups)
- query += """order by t1.weightage desc, t1.modified desc limit %s, %s""" % (start, limit)
+ query += """order by weightage desc, modified desc limit %s, %s""" % (start, limit)
data = frappe.db.sql(query, {"product_group": product_group}, as_dict=1)
diff --git a/erpnext/setup/doctype/sales_partner/sales_partner.py b/erpnext/setup/doctype/sales_partner/sales_partner.py
index 0209df3..9031af5 100644
--- a/erpnext/setup/doctype/sales_partner/sales_partner.py
+++ b/erpnext/setup/doctype/sales_partner/sales_partner.py
@@ -6,14 +6,15 @@
from frappe.utils import cstr, filter_strip_join
from frappe.website.website_generator import WebsiteGenerator
-condition_field = "show_in_website"
-template = "templates/generators/sales_partner.html"
-
class SalesPartner(WebsiteGenerator):
+ page_title_field = "partner_name"
+ condition_field = "show_in_website"
+ template = "templates/generators/sales_partner.html"
def autoname(self):
self.name = self.partner_name
def validate(self):
+ self.parent_website_route = "partners"
super(SalesPartner, self).validate()
if self.partner_website and not self.partner_website.startswith("http"):
self.partner_website = "http://" + self.partner_website
@@ -27,9 +28,6 @@
else:
return ''
- def get_page_title(self):
- return self.partner_name
-
def get_context(self, context):
address = frappe.db.get_value("Address",
{"sales_partner": self.name, "is_primary_address": 1},
@@ -46,7 +44,3 @@
})
return context
-
- def get_parent_website_route(self):
- parent_website_sitemap = super(SalesPartner, self).get_parent_website_route()
- return parent_website_sitemap or "partners"
diff --git a/erpnext/stock/doctype/item/item.py b/erpnext/stock/doctype/item/item.py
index 21ed057..c158014 100644
--- a/erpnext/stock/doctype/item/item.py
+++ b/erpnext/stock/doctype/item/item.py
@@ -12,10 +12,12 @@
class WarehouseNotSet(frappe.ValidationError): pass
-condition_field = "show_in_website"
-template = "templates/generators/item.html"
-
class Item(WebsiteGenerator):
+ page_title_field = "item_name"
+ condition_field = "show_in_website"
+ template = "templates/generators/item.html"
+ parent_website_route_field = "item_group"
+
def onload(self):
super(Item, self).onload()
self.get("__onload").sle_exists = self.check_if_sle_exists()
@@ -49,9 +51,6 @@
self.cant_change()
self.validate_item_type_for_reorder()
- if not self.parent_website_route:
- self.parent_website_route = frappe.get_website_route("Item Group", self.item_group)
-
if not self.get("__islocal"):
self.old_item_group = frappe.db.get_value(self.doctype, self.name, "item_group")
self.old_website_item_groups = frappe.db.sql_list("""select item_group from `tabWebsite Item Group`
@@ -216,14 +215,6 @@
item_description=%s, modified=NOW() where item_code=%s""",
(self.item_name, self.description, self.name))
- def get_page_title(self):
- if self.name==self.item_name:
- page_name_from = self.name
- else:
- page_name_from = self.name + " - " + self.item_name
-
- return page_name_from
-
def get_tax_rate(self, tax_type):
return { "tax_rate": frappe.db.get_value("Account", tax_type, "tax_rate") }