Fixes related to appifing shopping cart
diff --git a/erpnext/accounts/doctype/account/test_account.py b/erpnext/accounts/doctype/account/test_account.py
index 2d15b62..3221901 100644
--- a/erpnext/accounts/doctype/account/test_account.py
+++ b/erpnext/accounts/doctype/account/test_account.py
@@ -4,7 +4,7 @@
 from __future__ import unicode_literals
 import webnotes
 
-def make_test_records(verbose):
+def _make_test_records(verbose):
 	from webnotes.test_runner import make_test_objects
 		
 	accounts = [
diff --git a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
index 02350c5..3092477 100644
--- a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
+++ b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
@@ -668,7 +668,7 @@
 			
 	def test_recurring_invoice(self):
 		from webnotes.utils import get_first_day, get_last_day, add_to_date, nowdate, getdate
-		from accounts.utils import get_fiscal_year
+		from erpnext.accounts.utils import get_fiscal_year
 		today = nowdate()
 		base_si = webnotes.bean(copy=test_records[0])
 		base_si.doc.fields.update({
diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py
index ccfff8a..2615907 100644
--- a/erpnext/controllers/accounts_controller.py
+++ b/erpnext/controllers/accounts_controller.py
@@ -48,7 +48,7 @@
 					{"master_type": fieldname.title(), "master_name": self.doc.fields[fieldname], 
 					"company": self.doc.company}, "name")
 				if accounts:
-					from accounts.doctype.gl_entry.gl_entry import validate_frozen_account
+					from erpnext.accounts.doctype.gl_entry.gl_entry import validate_frozen_account
 					for account in accounts:						
 						validate_frozen_account(account[0])
 			
@@ -413,7 +413,7 @@
 			})
 			
 	def validate_multiple_billing(self, ref_dt, item_ref_dn, based_on, parentfield):
-		from controllers.status_updater import get_tolerance_for
+		from erpnext.controllers.status_updater import get_tolerance_for
 		item_tolerance = {}
 		global_tolerance = None
 		
diff --git a/erpnext/setup/doctype/item_group/item_group.py b/erpnext/setup/doctype/item_group/item_group.py
index 02fe374..7e79c95 100644
--- a/erpnext/setup/doctype/item_group/item_group.py
+++ b/erpnext/setup/doctype/item_group/item_group.py
@@ -5,10 +5,8 @@
 import webnotes
 
 from webnotes.utils.nestedset import DocTypeNestedSet
-from webnotes.webutils import WebsiteGenerator
-from webnotes.webutils import delete_page_cache
 
-class DocType(DocTypeNestedSet, WebsiteGenerator):
+class DocType(DocTypeNestedSet):
 	def __init__(self, doc, doclist=[]):
 		self.doc = doc
 		self.doclist = doclist
@@ -16,35 +14,12 @@
 		
 	def on_update(self):
 		DocTypeNestedSet.on_update(self)
-		WebsiteGenerator.on_update(self)
 		
 		self.validate_name_with_item()
 		
-		invalidate_cache_for(self.doc.name)
-				
 		self.validate_one_root()
 		
 	def validate_name_with_item(self):
 		if webnotes.conn.exists("Item", self.doc.name):
 			webnotes.msgprint("An item exists with same name (%s), please change the \
 				item group name or rename the item" % self.doc.name, raise_exception=1)
-		
-def get_group_item_count(item_group):
-	child_groups = ", ".join(['"' + i[0] + '"' for i in get_child_groups(item_group)])
-	return webnotes.conn.sql("""select count(*) from `tabItem` 
-		where docstatus = 0 and 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))[0][0]
-
-def get_parent_item_groups(item_group_name):
-	item_group = webnotes.doc("Item Group", item_group_name)
-	return webnotes.conn.sql("""select name, page_name from `tabItem Group`
-		where lft <= %s and rgt >= %s 
-		and ifnull(show_in_website,0)=1
-		order by lft asc""", (item_group.lft, item_group.rgt), as_dict=True)
-		
-def invalidate_cache_for(item_group):
-	for i in get_parent_item_groups(item_group):
-		if i.page_name:
-			delete_page_cache(i.page_name)
diff --git a/erpnext/setup/doctype/sales_partner/sales_partner.py b/erpnext/setup/doctype/sales_partner/sales_partner.py
index c2309e8..cf9a863 100644
--- a/erpnext/setup/doctype/sales_partner/sales_partner.py
+++ b/erpnext/setup/doctype/sales_partner/sales_partner.py
@@ -4,9 +4,8 @@
 from __future__ import unicode_literals
 import webnotes
 from webnotes.utils import cint, cstr, filter_strip_join
-from webnotes.webutils import WebsiteGenerator, clear_cache
 
-class DocType(WebsiteGenerator):
+class DocType():
 	def __init__(self, doc, doclist=None):
 		self.doc = doc
 		self.doclist = doclist
@@ -15,11 +14,6 @@
 		if self.doc.partner_website and not self.doc.partner_website.startswith("http"):
 			self.doc.partner_website = "http://" + self.doc.partner_website
 
-	def on_update(self):
-		WebsiteGenerator.on_update(self)
-		if self.doc.page_name:
-			clear_cache("partners")
-		
 	def get_contacts(self,nm):
 		if nm:
 			contact_details =webnotes.conn.convert_to_lists(webnotes.conn.sql("select name, CONCAT(IFNULL(first_name,''),' ',IFNULL(last_name,'')),contact_no,email_id from `tabContact` where sales_partner = '%s'"%nm))
diff --git a/erpnext/stock/doctype/item/item.py b/erpnext/stock/doctype/item/item.py
index fb6f73d..16938b4 100644
--- a/erpnext/stock/doctype/item/item.py
+++ b/erpnext/stock/doctype/item/item.py
@@ -8,13 +8,12 @@
 from webnotes.model.doc import addchild
 from webnotes.model.bean import getlist
 from webnotes import msgprint, _
-from webnotes.webutils import WebsiteGenerator
 
 from webnotes.model.controller import DocListController
 
 class WarehouseNotSet(Exception): pass
 
-class DocType(DocListController, WebsiteGenerator):
+class DocType(DocListController):
 	def onload(self):
 		self.doc.fields["__sle_exists"] = self.check_if_sle_exists()
 	
@@ -48,7 +47,6 @@
 			
 	def on_update(self):
 		self.validate_name_with_item_group()
-		self.update_website()
 		self.update_item_price()
 
 	def check_warehouse_is_set_for_stock_item(self):
@@ -197,14 +195,6 @@
 				please change the item name or rename the item group" % 
 				self.doc.name, raise_exception=1)
 
-	def update_website(self):
-		from erpnext.setup.doctype.item_group.item_group import invalidate_cache_for
-		invalidate_cache_for(self.doc.item_group)
-		[invalidate_cache_for(d.item_group) for d in \
-			self.doclist.get({"doctype":"Website Item Group"})]
-
-		WebsiteGenerator.on_update(self)
-
 	def update_item_price(self):
 		webnotes.conn.sql("""update `tabItem Price` set item_name=%s, 
 			item_description=%s, modified=NOW() where item_code=%s""",
@@ -232,7 +222,6 @@
 		
 	def on_trash(self):
 		webnotes.conn.sql("""delete from tabBin where item_code=%s""", self.doc.item_code)
-		WebsiteGenerator.on_trash(self)
 
 	def before_rename(self, olddn, newdn, merge=False):
 		if merge:
@@ -250,18 +239,11 @@
 
 	def after_rename(self, olddn, newdn, merge):
 		webnotes.conn.set_value("Item", newdn, "item_code", newdn)
-		self.update_website_page_name()
 			
 		if merge:
 			self.set_last_purchase_rate(newdn)
 			self.recalculate_bin_qty(newdn)
 			
-	def update_website_page_name(self):
-		if self.doc.page_name:
-			self.update_website()
-			from webnotes.webutils import clear_cache
-			clear_cache(self.doc.page_name)
-			
 	def set_last_purchase_rate(self, newdn):
 		from erpnext.buying.utils import get_last_purchase_details
 		last_purchase_rate = get_last_purchase_details(newdn).get("purchase_rate", 0)