Sourced wnframework-modules from Google Code as erpnext
diff --git a/crm/page/customers/__init__.py b/crm/page/customers/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/crm/page/customers/__init__.py
diff --git a/crm/page/customers/customers.comp.js b/crm/page/customers/customers.comp.js
new file mode 100644
index 0000000..b6e831c
--- /dev/null
+++ b/crm/page/customers/customers.comp.js
@@ -0,0 +1,3 @@
+
+pscript.onload_customers=function(){make_customer_tab($i('dcv_customers'));}
+function make_customer_tab(parent){pscript.dcv_customers=new wn.widgets.DocColumnView('Customers',parent,['Customer Group','Customer','Contact'],{'Customer Group':{show_fields:['name'],create_fields:['name'],search_fields:['name'],next_col:'Customer'},'Customer':{show_fields:['name','customer_name'],create_fields:['name','customer_name'],search_fields:['customer_name'],filter_by:['Customer Group','customer_group'],next_col:'Contact'},'Contact':{show_fields:['name','first_name','last_name'],create_fields:['name','first_name','last_name'],search_fields:['first_name','last_name'],conditions:['is_customer=1'],set_values:{'is_customer':1},filter_by:['Customer','customer']},})}
\ No newline at end of file
diff --git a/crm/page/customers/customers.html b/crm/page/customers/customers.html
new file mode 100644
index 0000000..9f3d19c
--- /dev/null
+++ b/crm/page/customers/customers.html
@@ -0,0 +1 @@
+<div id="dcv_customers"></div>
\ No newline at end of file
diff --git a/crm/page/customers/customers.js b/crm/page/customers/customers.js
new file mode 100644
index 0000000..7902e24
--- /dev/null
+++ b/crm/page/customers/customers.js
@@ -0,0 +1,34 @@
+//make tabs
+
+pscript.onload_customers = function() {
+	make_customer_tab($i('dcv_customers'));
+}
+
+function make_customer_tab(parent) {	
+	pscript.dcv_customers = new wn.widgets.DocColumnView('Customers', parent, 
+		['Customer Group', 'Customer', 'Contact'], {
+		'Customer Group': { 
+			show_fields : ['name'],
+			create_fields : ['name'],
+			search_fields : ['name'],
+			next_col: 'Customer'
+		},
+		'Customer': { 
+			show_fields : ['name', 'customer_name'],
+			create_fields : ['name', 'customer_name'],
+			search_fields : ['customer_name'],
+			filter_by : ['Customer Group', 'customer_group'],
+			next_col: 'Contact'
+		},
+		'Contact': { 
+			show_fields : ['name', 'first_name', 'last_name'],
+			create_fields : ['name','first_name', 'last_name'],
+			search_fields : ['first_name', 'last_name'],
+			conditions: ['is_customer=1'],
+			set_values: {'is_customer': 1 },
+			filter_by : ['Customer', 'customer']
+		},
+	})
+}
+
+
diff --git a/crm/page/customers/customers.txt b/crm/page/customers/customers.txt
new file mode 100644
index 0000000..7f44ab45
--- /dev/null
+++ b/crm/page/customers/customers.txt
@@ -0,0 +1,26 @@
+[
+	{
+		'content': None,
+		'creation': '2011-03-25 13:48:50',
+		'docstatus': 0,
+		'doctype': 'Page',
+		'icon': None,
+		'idx': None,
+		'menu_index': None,
+		'modified': '2011-03-25 13:48:50',
+		'modified_by': 'Administrator',
+		'module': 'CRM',
+		'name': 'customers',
+		'owner': 'Administrator',
+		'page_name': 'Customers',
+		'parent': None,
+		'parent_node': None,
+		'parentfield': None,
+		'parenttype': None,
+		'script': None,
+		'show_in_menu': None,
+		'standard': 'Yes',
+		'static_content': None,
+		'style': None
+	}
+]
\ No newline at end of file