Merge branch 'master' of github.com:webnotes/erpnext
diff --git a/accounts/report/delivered_items_to_be_billed/delivered_items_to_be_billed.txt b/accounts/report/delivered_items_to_be_billed/delivered_items_to_be_billed.txt
index e0fd542..4a01347 100644
--- a/accounts/report/delivered_items_to_be_billed/delivered_items_to_be_billed.txt
+++ b/accounts/report/delivered_items_to_be_billed/delivered_items_to_be_billed.txt
@@ -2,16 +2,16 @@
  {
   "owner": "Administrator", 
   "docstatus": 0, 
-  "creation": "2012-11-23 18:26:54", 
+  "creation": "2012-11-23 16:46:22", 
   "modified_by": "Administrator", 
-  "modified": "2012-11-23 18:27:38"
+  "modified": "2012-11-26 10:11:53"
  }, 
  {
   "name": "__common__", 
   "ref_doctype": "Sales Invoice", 
   "doctype": "Report", 
   "is_standard": "Yes", 
-  "query": "select \n `tabDelivery Note`.`name` as \"Delivery Note:Link/Delivery Note:120\",\n `tabDelivery Note`.`status` as \"Status\",\n `tabDelivery Note`.`posting_date` as \"Date:Date\",\n `tabDelivery Note Item`.item_code as \"Item:Link/Item:120\",\n `tabDelivery Note Item`.description as \"Description\",\n `tabDelivery Note Item`.qty as \"Qty:Float\",\n `tabDelivery Note Item`.billed_qty as \"Billed Qty:Float\"\nfrom\n `tabDelivery Note`, `tabDelivery Note Item`\nwhere\n `tabDelivery Note Item`.`parent` = `tabDelivery Note`.`name`\n and `tabDelivery Note`.docstatus = 1\n and ifnull(`tabDelivery Note Item`.billed_qty, 0) < ifnull(`tabDelivery Note Item`.qty, 0)\norder by `tabDelivery Note`.posting_date asc"
+  "query": "select \n `tabDelivery Note`.`name` as \"Delivery Note:Link/Delivery Note:120\",\n`tabDelivery Note`.`customer` as \"Customer:Link/Customer:120\",\n`tabDelivery Note`.`status` as \"Status\",\n `tabDelivery Note`.`posting_date` as \"Date:Date\",\n `tabDelivery Note Item`.item_code as \"Item:Link/Item:120\",\n `tabDelivery Note Item`.description as \"Description\",\n `tabDelivery Note Item`.qty as \"Qty:Float\",\n `tabDelivery Note Item`.billed_qty as \"Billed Qty:Float\"\nfrom\n `tabDelivery Note`, `tabDelivery Note Item`\nwhere\n `tabDelivery Note Item`.`parent` = `tabDelivery Note`.`name`\n and `tabDelivery Note`.docstatus = 1\n and ifnull(`tabDelivery Note Item`.billed_qty,0) < ifnull(`tabDelivery Note Item`.qty,0)\norder by `tabDelivery Note`.posting_date asc"
  }, 
  {
   "name": "Delivered Items To Be Billed", 
diff --git a/home/page/latest_updates/latest_updates.js b/home/page/latest_updates/latest_updates.js
index 190cdd2..41e8ecd 100644
--- a/home/page/latest_updates/latest_updates.js
+++ b/home/page/latest_updates/latest_updates.js
@@ -1,4 +1,7 @@
 erpnext.updates = [
+	["24ht November 2012", [
+		"Support Ticket: Support Ticket Response is now Communication",
+	]],
 	["23rd November 2012", [
 		"General Ledger: Auto-suggest Accounts for filtering",
 		"Calendar: User Interface Fixes, small text for events",
diff --git a/patches/november_2012/support_ticket_response_to_communication.py b/patches/november_2012/support_ticket_response_to_communication.py
new file mode 100644
index 0000000..6534bb1
--- /dev/null
+++ b/patches/november_2012/support_ticket_response_to_communication.py
@@ -0,0 +1,26 @@
+import webnotes
+import email.utils
+
+def execute():
+	webnotes.conn.commit()
+	for d in webnotes.conn.sql("""select owner, creation, modified, modified_by, parent, 
+		from_email, mail from `tabSupport Ticket Response`""", as_dict=1):
+		c = webnotes.doc("Communication")
+		c.creation = d.creation
+		c.owner = d.owner
+		c.modified = d.modified
+		c.modified_by = d.modified_by
+		c.naming_series = "COMM-"
+		c.subject = "response to Support Ticket: " + d.parent
+		c.content = d.mail
+		c.email_address = d.from_email
+		c.support_ticket = d.parent
+		email_addr = email.utils.parseaddr(c.email_address)[1]
+		c.contact = webnotes.conn.get_value("Contact", {"email_id": email_addr}, "name") or None
+		c.lead = webnotes.conn.get_value("Lead", {"email_id": email_addr}, "name") or None
+		c.communication_medium = "Email"
+		webnotes.conn.begin()
+		c.save(1, keep_timestamps=True)
+		webnotes.conn.commit()
+		
+	webnotes.delete_doc("DocType", "Support Ticket Response")
diff --git a/patches/patch_list.py b/patches/patch_list.py
index 885cf56..f54de50 100644
--- a/patches/patch_list.py
+++ b/patches/patch_list.py
@@ -679,4 +679,8 @@
 		'patch_module': 'patches.november_2012',
 		'patch_file': 'remove_old_unbilled_items_report',
 	},
+	{
+		'patch_module': 'patches.november_2012',
+		'patch_file': 'support_ticket_response_to_communication',
+	},
 ]
\ No newline at end of file
diff --git a/selling/doctype/lead/lead.txt b/selling/doctype/lead/lead.txt
index 666d702..ff8b0a8 100644
--- a/selling/doctype/lead/lead.txt
+++ b/selling/doctype/lead/lead.txt
@@ -1,708 +1,588 @@
-# DocType, Lead
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-11-19 12:06:56',
-		u'docstatus': 0,
-		u'modified': '2012-11-21 17:12:54',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1332222225',
-		'allow_trash': 1,
-		'colour': u'White:FFF',
-		'default_print_format': u'Standard',
-		u'doctype': u'DocType',
-		'document_type': u'Master',
-		'module': u'Selling',
-		u'name': u'__common__',
-		'search_fields': u'lead_name,lead_owner,status',
-		'section_style': u'Tabbed',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'subject': u'%(lead_name)s from %(company_name)s | To Discuss: %(to_discuss)s',
-		'tag_fields': u'status,source',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Lead',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'amend': 0,
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Lead',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'submit': 0
-	},
-
-	# DocType, Lead
-	{
-		u'doctype': u'DocType',
-		u'name': u'Lead'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'basic_info',
-		'fieldtype': u'Section Break',
-		'label': u'Basic Info',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'To manage multiple series please go to Setup > Manage Series',
-		u'doctype': u'DocField',
-		'fieldname': u'naming_series',
-		'fieldtype': u'Select',
-		'label': u'Naming Series',
-		'no_copy': 1,
-		'oldfieldname': u'naming_series',
-		'oldfieldtype': u'Select',
-		'options': u'LEAD\nLEAD/10-11/\nLEAD/MUMBAI/',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'lead_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Contact Name',
-		'oldfieldname': u'lead_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Name of organization from where lead has come',
-		u'doctype': u'DocField',
-		'fieldname': u'company_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Organization Name (for Lead)',
-		'oldfieldname': u'company_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 0,
-		'search_index': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Source of the lead. If via a campaign, select "Campaign"',
-		u'doctype': u'DocField',
-		'fieldname': u'source',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Source',
-		'no_copy': 1,
-		'oldfieldname': u'source',
-		'oldfieldtype': u'Select',
-		'options': u'\nAdvertisement\nBlog\nCampaign\nCall\nCustomer\nExhibition\nSupplier\nWebsite',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u"eval:doc.source == 'Existing Customer'",
-		'description': u'Source of the Lead',
-		u'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'label': u'From Customer',
-		'oldfieldname': u'customer',
-		'oldfieldtype': u'Link',
-		'options': u'Customer',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u"eval:doc.source == 'Campaign'",
-		'description': u'Enter campaign name if the source of lead is campaign.',
-		u'doctype': u'DocField',
-		'fieldname': u'campaign_name',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'label': u'Campaign Name',
-		'oldfieldname': u'campaign_name',
-		'oldfieldtype': u'Link',
-		'options': u'Campaign',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Open',
-		u'doctype': u'DocField',
-		'fieldname': u'status',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Status',
-		'no_copy': 1,
-		'oldfieldname': u'status',
-		'oldfieldtype': u'Select',
-		'options': u'\nOpen\nAttempted to Contact\nContact in Future\nContacted\nInterested\nNot interested\nLead Lost\nConverted',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'type',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Lead Type',
-		'oldfieldname': u'type',
-		'oldfieldtype': u'Select',
-		'options': u'\nClient\nChannel Partner\nConsultant',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'remark',
-		'fieldtype': u'Small Text',
-		'label': u'Remark',
-		'oldfieldname': u'remark',
-		'oldfieldtype': u'Text',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'communication_history',
-		'fieldtype': u'Section Break',
-		'label': u'Communication History',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 0,
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'communication_html',
-		'fieldtype': u'HTML',
-		'label': u'Communication HTML',
-		'oldfieldname': u'follow_up',
-		'oldfieldtype': u'Table',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'contact_info',
-		'fieldtype': u'Section Break',
-		'label': u'Contact Info',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'phone',
-		'fieldtype': u'Data',
-		'label': u'Phone',
-		'oldfieldname': u'contact_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'mobile_no',
-		'fieldtype': u'Data',
-		'label': u'Mobile No.',
-		'oldfieldname': u'mobile_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'email_id',
-		'fieldtype': u'Data',
-		'label': u'Email Id',
-		'oldfieldname': u'email_id',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'fax',
-		'fieldtype': u'Data',
-		'label': u'Fax',
-		'oldfieldname': u'fax',
-		'oldfieldtype': u'Data',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'website',
-		'fieldtype': u'Data',
-		'label': u'Website',
-		'oldfieldname': u'website',
-		'oldfieldtype': u'Data',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'<a href="#Sales Browser/Territory">To manage Territory, click here</a>',
-		u'doctype': u'DocField',
-		'fieldname': u'territory',
-		'fieldtype': u'Link',
-		'label': u'Territory',
-		'oldfieldname': u'territory',
-		'oldfieldtype': u'Link',
-		'options': u'Territory',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break2',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'address_line1',
-		'fieldtype': u'Data',
-		'label': u'Address Line 1',
-		'oldfieldname': u'address_line1',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'address_line2',
-		'fieldtype': u'Data',
-		'label': u'Address Line 2',
-		'oldfieldname': u'address_line2',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'city',
-		'fieldtype': u'Data',
-		'label': u'City',
-		'oldfieldname': u'city',
-		'oldfieldtype': u'Select',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'country',
-		'fieldtype': u'Select',
-		'label': u'Country',
-		'oldfieldname': u'country',
-		'oldfieldtype': u'Select',
-		'options': u'link:Country',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'state',
-		'fieldtype': u'Data',
-		'label': u'State',
-		'oldfieldname': u'state',
-		'oldfieldtype': u'Select',
-		'options': u'Suggest',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'pincode',
-		'fieldtype': u'Data',
-		'label': u'Pin Code',
-		'oldfieldname': u'pincode',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'more_info',
-		'fieldtype': u'Section Break',
-		'label': u'More Info',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'default': u'__user',
-		u'doctype': u'DocField',
-		'fieldname': u'lead_owner',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Lead Owner',
-		'oldfieldname': u'lead_owner',
-		'oldfieldtype': u'Link',
-		'options': u'Profile',
-		'permlevel': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'market_segment',
-		'fieldtype': u'Select',
-		'hidden': 0,
-		'in_filter': 1,
-		'label': u'Market Segment',
-		'oldfieldname': u'market_segment',
-		'oldfieldtype': u'Select',
-		'options': u'\nLower Income\nMiddle Income\nUpper Income',
-		'permlevel': 0,
-		'reqd': 0,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'industry',
-		'fieldtype': u'Link',
-		'label': u'Industry',
-		'oldfieldname': u'industry',
-		'oldfieldtype': u'Link',
-		'options': u'Industry Type',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'request_type',
-		'fieldtype': u'Select',
-		'label': u'Request Type',
-		'oldfieldname': u'request_type',
-		'oldfieldtype': u'Select',
-		'options': u'\nProduct Enquiry\nRequest for Information\nSuggestions\nOther',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Select',
-		'options': u'link:Fiscal Year',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break3',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 0,
-		'depends_on': u"eval:doc.status == 'Lead Lost'",
-		u'doctype': u'DocField',
-		'fieldname': u'order_lost_reason',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'label': u'Lost Reason',
-		'oldfieldname': u'order_lost_reason',
-		'oldfieldtype': u'Link',
-		'options': u'Quotation Lost Reason',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 0,
-		'colour': u'White:FFF',
-		'description': u'Your sales person who will contact the lead in future',
-		u'doctype': u'DocField',
-		'fieldname': u'contact_by',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'in_filter': 1,
-		'label': u'Next Contact By',
-		'oldfieldname': u'contact_by',
-		'oldfieldtype': u'Link',
-		'options': u'Profile',
-		'permlevel': 0,
-		'print_hide': 0,
-		'reqd': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 0,
-		'colour': u'White:FFF',
-		'description': u'Your sales person will get a reminder on this date to contact the lead',
-		u'doctype': u'DocField',
-		'fieldname': u'contact_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Next Contact Date',
-		'no_copy': 1,
-		'oldfieldname': u'contact_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.__islocal',
-		'description': u'Date on which the lead was last contacted',
-		u'doctype': u'DocField',
-		'fieldname': u'last_contact_date',
-		'fieldtype': u'Date',
-		'label': u'Last Contact Date',
-		'no_copy': 1,
-		'oldfieldname': u'last_contact_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Link',
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'oldfieldtype': u'Link',
-		'options': u'Company',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'no_copy': 1,
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'unsubscribed',
-		'fieldtype': u'Check',
-		'label': u'Unsubscribed',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'blog_subscriber',
-		'fieldtype': u'Check',
-		'label': u'Blog Subscriber',
-		'permlevel': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales User',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Guest',
-		'write': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-11-02 17:16:46", 
+  "modified_by": "Administrator", 
+  "modified": "2012-11-24 15:09:56"
+ }, 
+ {
+  "name": "__common__", 
+  "default_print_format": "Standard", 
+  "search_fields": "lead_name,lead_owner,status", 
+  "module": "Selling", 
+  "doctype": "DocType", 
+  "document_type": "Master"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Lead", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Lead", 
+  "amend": 0, 
+  "submit": 0, 
+  "doctype": "DocPerm", 
+  "read": 1, 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Lead", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Basic Info", 
+  "fieldname": "basic_info", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "To manage multiple series please go to Setup > Manage Series", 
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Naming Series", 
+  "oldfieldname": "naming_series", 
+  "permlevel": 0, 
+  "fieldname": "naming_series", 
+  "fieldtype": "Select", 
+  "reqd": 0, 
+  "options": "LEAD\nLEAD/10-11/\nLEAD/MUMBAI/"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Contact Name", 
+  "oldfieldname": "lead_name", 
+  "fieldname": "lead_name", 
+  "fieldtype": "Data", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Email Id", 
+  "oldfieldname": "email_id", 
+  "fieldname": "email_id", 
+  "fieldtype": "Data", 
+  "search_index": 1, 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Name of organization from where lead has come", 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Company Name", 
+  "oldfieldname": "company_name", 
+  "trigger": "Client", 
+  "fieldname": "company_name", 
+  "fieldtype": "Data", 
+  "search_index": 0, 
+  "reqd": 0, 
+  "in_filter": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Source of the lead. If via a campaign, select \"Campaign\"", 
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Source", 
+  "oldfieldname": "source", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "source", 
+  "fieldtype": "Select", 
+  "search_index": 0, 
+  "reqd": 0, 
+  "in_filter": 1, 
+  "options": "\nAdvertisement\nBlog\nCampaign\nCall\nCustomer\nExhibition\nSupplier\nWebsite"
+ }, 
+ {
+  "description": "Source of th", 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "From Customer", 
+  "oldfieldname": "customer", 
+  "permlevel": 0, 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "depends_on": "eval:doc.source == 'Existing Customer'", 
+  "hidden": 0, 
+  "options": "Customer"
+ }, 
+ {
+  "description": "Enter campaign name if the source of lead is campaign.", 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Campaign Name", 
+  "oldfieldname": "campaign_name", 
+  "permlevel": 0, 
+  "fieldname": "campaign_name", 
+  "fieldtype": "Link", 
+  "depends_on": "eval:doc.source == 'Campaign'", 
+  "hidden": 0, 
+  "options": "Campaign"
+ }, 
+ {
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "permlevel": 0, 
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "default": "Open", 
+  "trigger": "Client", 
+  "fieldname": "status", 
+  "fieldtype": "Select", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "\nOpen\nAttempted to Contact\nContact in Future\nContacted\nInterested\nNot interested\nLead Lost\nConverted", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Lead Type", 
+  "oldfieldname": "type", 
+  "options": "\nClient\nChannel Partner\nConsultant", 
+  "fieldname": "type", 
+  "fieldtype": "Select", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Remark", 
+  "oldfieldname": "remark", 
+  "fieldname": "remark", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Communication History", 
+  "fieldname": "communication_history", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "colour": "White:FFF", 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Communication HTML", 
+  "oldfieldname": "follow_up", 
+  "fieldname": "communication_html", 
+  "fieldtype": "HTML", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "label": "Contact Info", 
+  "fieldname": "contact_info", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Phone", 
+  "oldfieldname": "contact_no", 
+  "fieldname": "phone", 
+  "fieldtype": "Data", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Mobile No.", 
+  "oldfieldname": "mobile_no", 
+  "fieldname": "mobile_no", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Fax", 
+  "oldfieldname": "fax", 
+  "fieldname": "fax", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Website", 
+  "oldfieldname": "website", 
+  "fieldname": "website", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "<a href=\"javascript:cur_frm.cscript.TerritoryHelp();\">To manage Territory, click here</a>", 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Territory", 
+  "oldfieldname": "territory", 
+  "options": "Territory", 
+  "fieldname": "territory", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break2", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Address Line 1", 
+  "oldfieldname": "address_line1", 
+  "fieldname": "address_line1", 
+  "fieldtype": "Data", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Address Line 2", 
+  "oldfieldname": "address_line2", 
+  "fieldname": "address_line2", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "City", 
+  "oldfieldname": "city", 
+  "fieldname": "city", 
+  "fieldtype": "Data", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Country", 
+  "oldfieldname": "country", 
+  "trigger": "Client", 
+  "fieldname": "country", 
+  "fieldtype": "Select", 
+  "reqd": 0, 
+  "options": "link:Country", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "State", 
+  "oldfieldname": "state", 
+  "options": "Suggest", 
+  "fieldname": "state", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Pin Code", 
+  "oldfieldname": "pincode", 
+  "fieldname": "pincode", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "More Info", 
+  "fieldname": "more_info", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "default": "__user", 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Lead Owner", 
+  "oldfieldname": "lead_owner", 
+  "options": "Profile", 
+  "fieldname": "lead_owner", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Market Segment", 
+  "oldfieldname": "market_segment", 
+  "permlevel": 0, 
+  "fieldname": "market_segment", 
+  "fieldtype": "Select", 
+  "search_index": 0, 
+  "reqd": 0, 
+  "hidden": 0, 
+  "options": "\nLower Income\nMiddle Income\nUpper Income", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Industry", 
+  "oldfieldname": "industry", 
+  "options": "Industry Type", 
+  "fieldname": "industry", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Request Type", 
+  "oldfieldname": "request_type", 
+  "options": "\nProduct Enquiry\nRequest for Information\nSuggestions\nOther", 
+  "fieldname": "request_type", 
+  "fieldtype": "Select", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "options": "link:Fiscal Year", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break3", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Lost Reason", 
+  "oldfieldname": "order_lost_reason", 
+  "options": "Quotation Lost Reason", 
+  "fieldname": "order_lost_reason", 
+  "fieldtype": "Link", 
+  "depends_on": "eval:doc.status == 'Lead Lost'", 
+  "hidden": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "description": "Your sales person who will contact the lead in future", 
+  "permlevel": 0, 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Next Contact By", 
+  "oldfieldname": "contact_by", 
+  "width": "100px", 
+  "fieldname": "contact_by", 
+  "fieldtype": "Link", 
+  "reqd": 0, 
+  "hidden": 0, 
+  "in_filter": 1, 
+  "options": "Profile"
+ }, 
+ {
+  "description": "Your sales person will get a reminder on this date to contact the lead", 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "colour": "White:FFF", 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Next Contact Date", 
+  "oldfieldname": "contact_date", 
+  "width": "100px", 
+  "fieldname": "contact_date", 
+  "fieldtype": "Date", 
+  "reqd": 0, 
+  "in_filter": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "Date on which the lead was last contacted", 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Last Contact Date", 
+  "oldfieldname": "last_contact_date", 
+  "fieldname": "last_contact_date", 
+  "fieldtype": "Date", 
+  "depends_on": "eval:!doc.__islocal", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "options": "Company", 
+  "fieldname": "company", 
+  "fieldtype": "Link", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Unsubscribed", 
+  "fieldname": "unsubscribed", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Blog Subscriber", 
+  "fieldname": "blog_subscriber", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "All", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Guest", 
+  "cancel": 0, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/support/doctype/communication/communication.txt b/support/doctype/communication/communication.txt
index 07fc0d5..e53f1f7 100644
--- a/support/doctype/communication/communication.txt
+++ b/support/doctype/communication/communication.txt
@@ -1,406 +1,340 @@
-# DocType, Communication
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-31 17:14:18',
-		u'docstatus': 0,
-		u'modified': '2012-11-14 12:15:56',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_attach': 1,
-		'description': u'Keep a track of all communications',
-		u'doctype': u'DocType',
-		'document_type': u'Master',
-		'in_dialog': 1,
-		'module': u'Support',
-		u'name': u'__common__',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Communication',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Communication',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Communication
-	{
-		u'doctype': u'DocType',
-		u'name': u'Communication'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'basic_info',
-		'fieldtype': u'Section Break',
-		'label': u'Basic Info',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'COMM-',
-		u'doctype': u'DocField',
-		'fieldname': u'naming_series',
-		'fieldtype': u'Select',
-		'hidden': 1,
-		'label': u'Naming Series',
-		'options': u'COMM-',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'category',
-		'fieldtype': u'Select',
-		'label': u'Category',
-		'options': u'\nSales\nComplaint\nHelp\nSuggestion\nMiscellaneous\nSent Mail',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'action',
-		'fieldtype': u'Select',
-		'label': u'Action',
-		'options': u'\nCreated Opportunity\nSent Quotation\nCreated Support Ticket\nCreated Customer Issue\nNo Action\nSent Mail',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'next_communication_date',
-		'fieldtype': u'Date',
-		'label': u'Next Communcation On',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break2',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'subject',
-		'fieldtype': u'Small Text',
-		'label': u'Subject',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'section_break1',
-		'fieldtype': u'Section Break',
-		'options': u'simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'content',
-		'fieldtype': u'Text',
-		'label': u'Content',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'additional_info',
-		'fieldtype': u'Section Break',
-		'label': u'Additional Info',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'column_break3',
-		'fieldtype': u'Column Break',
-		'label': u'Related To',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'lead',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'label': u'Lead',
-		'options': u'Lead',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'contact',
-		'fieldtype': u'Link',
-		'label': u'Contact',
-		'options': u'Contact',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'label': u'Customer',
-		'options': u'Customer',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'supplier',
-		'fieldtype': u'Link',
-		'label': u'Supplier',
-		'options': u'Supplier',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'opportunity',
-		'fieldtype': u'Link',
-		'label': u'Opportunity',
-		'options': u'Opportunity',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'quotation',
-		'fieldtype': u'Link',
-		'label': u'Quotation',
-		'options': u'Quotation',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'support_ticket',
-		'fieldtype': u'Link',
-		'label': u'Support Ticket',
-		'options': u'Support Ticket',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'communication_medium',
-		'fieldtype': u'Select',
-		'label': u'Communication Medium',
-		'options': u'\nChat\nPhone\nEmail\nSMS\nVisit\nOther',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'phone_no',
-		'fieldtype': u'Data',
-		'label': u'Phone No.',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'email_address',
-		'fieldtype': u'Data',
-		'label': u'Email Address',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'section_break2',
-		'fieldtype': u'Section Break',
-		'options': u'simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break4',
-		'fieldtype': u'Column Break',
-		'label': u'By',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'__user',
-		u'doctype': u'DocField',
-		'fieldname': u'user',
-		'fieldtype': u'Link',
-		'label': u'User',
-		'options': u'Profile',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'sales_person',
-		'fieldtype': u'Link',
-		'label': u'Sales Person',
-		'options': u'Sales Person',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break5',
-		'fieldtype': u'Column Break',
-		'label': u'On',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Today',
-		u'doctype': u'DocField',
-		'fieldname': u'communication_date',
-		'fieldtype': u'Date',
-		'label': u'Date',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'file_list',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'File List',
-		'no_copy': 1,
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'_user_tags',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'User Tags',
-		'no_copy': 1,
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Support Team'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Manager'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Manager'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Support Manager'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Support Manager'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-11-14 12:25:16", 
+  "modified_by": "Administrator", 
+  "modified": "2012-11-24 15:22:32"
+ }, 
+ {
+  "allow_attach": 1, 
+  "doctype": "DocType", 
+  "module": "Support", 
+  "name": "__common__", 
+  "in_dialog": 1, 
+  "document_type": "Master", 
+  "description": "Keep a track of all communications"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Communication", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Communication", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Communication", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Basic Info", 
+  "fieldname": "basic_info", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "default": "COMM-", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Naming Series", 
+  "options": "COMM-", 
+  "fieldname": "naming_series", 
+  "fieldtype": "Select", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Subject", 
+  "fieldname": "subject", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Content", 
+  "width": "400", 
+  "fieldname": "content", 
+  "fieldtype": "Text", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "simple", 
+  "fieldname": "section_break1", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Category", 
+  "options": "\nSales\nComplaint\nHelp\nSuggestion\nMiscellaneous\nSent Mail", 
+  "fieldname": "category", 
+  "fieldtype": "Select", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break2", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Next Communcation On", 
+  "fieldname": "next_communication_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Action", 
+  "options": "\nCreated Opportunity\nSent Quotation\nCreated Support Ticket\nCreated Customer Issue\nNo Action\nSent Mail", 
+  "fieldname": "action", 
+  "fieldtype": "Select", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Additional Info", 
+  "fieldname": "additional_info", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Related To", 
+  "fieldname": "column_break3", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Lead", 
+  "options": "Lead", 
+  "fieldname": "lead", 
+  "fieldtype": "Link", 
+  "hidden": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Contact", 
+  "options": "Contact", 
+  "fieldname": "contact", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Customer", 
+  "options": "Customer", 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Supplier", 
+  "options": "Supplier", 
+  "fieldname": "supplier", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Opportunity", 
+  "options": "Opportunity", 
+  "fieldname": "opportunity", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Quotation", 
+  "options": "Quotation", 
+  "fieldname": "quotation", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Support Ticket", 
+  "options": "Support Ticket", 
+  "fieldname": "support_ticket", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Communication Medium", 
+  "options": "\nChat\nPhone\nEmail\nSMS\nVisit\nOther", 
+  "fieldname": "communication_medium", 
+  "fieldtype": "Select", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Phone No.", 
+  "fieldname": "phone_no", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Email Address", 
+  "fieldname": "email_address", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "simple", 
+  "fieldname": "section_break2", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "By", 
+  "fieldname": "column_break4", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "default": "__user", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "User", 
+  "options": "Profile", 
+  "fieldname": "user", 
+  "fieldtype": "Link", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Sales Person", 
+  "options": "Sales Person", 
+  "fieldname": "sales_person", 
+  "fieldtype": "Link", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "On", 
+  "fieldname": "column_break5", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "default": "Today", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Date", 
+  "fieldname": "communication_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "File List", 
+  "fieldname": "file_list", 
+  "fieldtype": "Text", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "User Tags", 
+  "fieldname": "_user_tags", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "role": "Support Team", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "role": "Sales Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "role": "Sales User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "role": "Sales Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "role": "Support Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "role": "Support Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/support/doctype/support_ticket/support_ticket.css b/support/doctype/support_ticket/support_ticket.css
index 8d563a7..370d99c 100644
--- a/support/doctype/support_ticket/support_ticket.css
+++ b/support/doctype/support_ticket/support_ticket.css
@@ -1,3 +1,18 @@
+.communication {
+	border: 1px solid #aaa; 
+	border-top: 0px;
+	padding: 7px; 
+	background-color: #f2f2f2
+}
+
+.communication:hover {
+	background-color: #fffff0;
+}
+
+.communication:first-child {
+	border-top: 1px solid #aaa; 
+}
+
 .support-ticket-wrapper {
 	margin-top: 10px;
 }
diff --git a/support/doctype/support_ticket/support_ticket.js b/support/doctype/support_ticket/support_ticket.js
index 7f3fc1d..689ddbf 100644
--- a/support/doctype/support_ticket/support_ticket.js
+++ b/support/doctype/support_ticket/support_ticket.js
@@ -22,26 +22,15 @@
 // xoxoxoxo
 // -------- new reply --------
 
-var cs = cur_frm.cscript;
 $.extend(cur_frm.cscript, {
 	onload: function(doc, dt, dn) {
 		//
 		// help area
 		//
 		if(in_list(user_roles,'System Manager')) {
-			cur_frm.page_layout.footer.help_area.innerHTML = '';
-			new wn.widgets.Footer({
-				parent:cur_frm.page_layout.footer.help_area,
-				columns:2,
-				items: [
-					{
-						column: 0,
-						label:'Email Settings',
-						description:'Integrate your incoming support emails to support ticket',
-						onclick: function() { loaddoc('Email Settings','Email Settings'); }
-					}, 					
-				]
-			})			
+			cur_frm.page_layout.footer.help_area.innerHTML = '<hr>\
+				<p><a href="#Form/Email Settings/Email Settings">Email Settings</a><br>\
+				<span class="help">Integrate incoming support emails to Support Ticket</span></p>';
 		}
 		
 		if(!doc.customer) hide_field(['customer_name','address_display','contact_display','contact_mobile','contact_email']);		
@@ -71,31 +60,30 @@
 	// make thread listing
 	//
 	make_listing: function(doc) {
-		cur_frm.fields_dict['thread_html'].wrapper.innerHTML = '';
+		var wrapper = cur_frm.fields_dict['thread_html'].wrapper;
+		$(wrapper)
+			.html("")
+			.css({"margin":"10px 0px"});
 		
-		// render first message
-		new EmailMessage($a(cur_frm.fields_dict['thread_html'].wrapper, 'div'), {
-			from_email: doc.raised_by,
-			creation: doc.creation,
-			mail: doc.description,
-			content_type: doc.content_type
-		}, null, -1)
-		
-		// render thread		
-		cur_frm.cscript.thread_list = new wn.ui.Listing({
-			parent: $a(cur_frm.fields_dict['thread_html'].wrapper, 'div'),
-			no_result_message: 'No responses yet',
-			get_query: function() {
-				return 'select mail, from_email, creation, content_type '+
-				'from `tabSupport Ticket Response` where parent="'+doc.name+'" order by creation asc'
-			},
-			as_dict: 1,
-			render_row: function(parent, data, list, idx) {
-				new EmailMessage(parent, data, list, idx);
+		var comm_list = wn.model.get("Communication", {"support_ticket": doc.name})
+		comm_list.push({
+			"email_address": doc.raised_by,
+			"modified": doc.creation,
+			"content": doc.description});
+			
+		comm_list.sort(function(a, b) { return new Date(a.modified) > new Date(b.modified) 
+			? -1 : 1 })
+				
+		$.each(comm_list, function(i, c) {
+			var comm = new erpnext.CommunicationView({
+				doc: c,
+				support_ticket: doc,
+				parent: wrapper
+			});
+			if(i==0) {
+				comm.toggle();
 			}
 		});
-		cur_frm.cscript.thread_list.run();
-
 	},
 	
 	send: function(doc, dt, dn) {
@@ -141,56 +129,41 @@
 	
 })
 
-
-
-EmailMessage = function(parent, args, list, idx) {
-	var me = this;
-	$.extend(this, args);
-	this.make = function() {
-		this.creation = wn.datetime.str_to_user(this.creation);
-		if(this.from_email)
-			this.from_email = this.from_email.replace('<', '&lt;').replace('>', '&gt;');
-		
-		// main wrapper
-		w = $a(parent, 'div', 'support-ticket-wrapper well');
-		//$(w).addClass('support-ticket-wrapper');
-
-		// sender and timestamp
-		$a($a(w, 'div', 'support-ticket-title'), 
-			'span', 'link_type', {}, repl('By %(from_email)s on %(creation)s:', this), 
-			function() {
-				// toggle message display on timestamp
-				if(me.message.style.display.toLowerCase()=='none') {
-					$ds(me.message);
-				} else {
-					$dh(me.message);
-				}
-			}
-		);
-		
-		// email text
-		this.message = $a(w, 'div', '', 
-			// style
-			{lineHeight:'1.7em', display:'none', padding: '7px', width: '575px',
-				wordWrap: 'break-word', textWrap: 'normal', overflowX: 'auto'}, 
-			
-			// newlines for text email
-			(this.content_type=='text/plain'
-				? this.mail
-					.replace(/\n[ ]*\n[\n\t ]*/g, '\n') // excess whitespace
-					.replace(/\n/g, '<br>')
-				: this.mail)
-		);
-		
-		// show only first and last message
-		if(idx==-1 || list && list.data.length-1==idx) {
-			$ds(this.message)
+erpnext.CommunicationView = Class.extend({
+	init: function(opts) {
+		$.extend(this, opts);
+		this.prepare();
+		this.make();
+		this.toggle();
+	},
+	prepare: function() {
+		//this.doc.when = comment_when(this.doc.modified);
+		this.doc.when = this.doc.modified;
+		if(this.doc.content.indexOf("<br>")== -1 && this.doc.content.indexOf("<p>")== -1) {
+			this.doc.content = this.doc.content.replace(/\n/g, "<br>");
 		}
-		
+		this.doc.content = this.doc.content.split("=== In response to ===")[0];
+		this.doc.content = this.doc.content.split("-----Original Message-----")[0];
+	},
+	make: function() {
+		var me = this;
+		this.body = $(repl('<div class="communication" title="Click to Expand / Collapse">\
+				<p><b>%(email_address)s on %(when)s</b></p>\
+				<div class="comm-content" style="border-top: 1px solid #ddd; padding: 10px"></div>\
+			</div>', this.doc))
+			.appendTo(this.parent)
+			.css({"cursor":"pointer"})
+			.click(function() {
+				$(this).find(".comm-content").toggle();
+			});
+			
+		this.body.find(".comm-content").html(this.doc.content);
+	},
+	toggle: function() {
+		this.body.find(".comm-content").toggle();
 	}
-	this.make();
-}
+})
+
 
 cur_frm.fields_dict.allocated_to.get_query = erpnext.utils.profile_query;
-
 cur_frm.fields_dict.customer.get_query = erpnext.utils.customer_query;
\ No newline at end of file
diff --git a/support/doctype/support_ticket/support_ticket.py b/support/doctype/support_ticket/support_ticket.py
index 3968618..a9ab729 100644
--- a/support/doctype/support_ticket/support_ticket.py
+++ b/support/doctype/support_ticket/support_ticket.py
@@ -29,6 +29,21 @@
 	def autoname(self):
 		self.doc.name = make_autoname(self.doc.naming_series+'.#####')
 
+	def onload(self):
+		self.add_communication_list()
+		
+	def add_communication_list(self):
+		# remove communications if present
+		self.doclist = webnotes.doclist(self.doclist).get({"doctype": ["!=", "Communcation"]})
+		
+		comm_list = webnotes.conn.sql("""select * from tabCommunication 
+			where support_ticket=%s order by modified desc limit 20""", self.doc.name, as_dict=1)
+		
+		[d.update({"doctype":"Communication"}) for d in comm_list]
+		
+		self.doclist.extend(webnotes.doclist([webnotes.doc(fielddata=d) \
+			for d in comm_list]))
+			
 	def send_response(self):
 		"""
 			Adds a new response to the ticket and sends an email to the sender
@@ -61,11 +76,12 @@
 		self.doc.new_response = None
 		webnotes.conn.set(self.doc, 'status', 'Waiting for Customer')
 		self.make_response_record(response)
+		self.add_communication_list()
 	
 	def last_response(self):
 		"""return last response"""
-		tmp = webnotes.conn.sql("""select mail from `tabSupport Ticket Response`
-			where parent = %s order by creation desc limit 1
+		tmp = webnotes.conn.sql("""select content from `tabCommunication`
+			where support_ticket = %s order by creation desc limit 1
 			""", self.doc.name)
 			
 		if not tmp:
@@ -84,17 +100,21 @@
 		
 	def make_response_record(self, response, from_email = None, content_type='text/plain'):
 		"""
-			Creates a new Support Ticket Response record
+			Creates a new Communication record
 		"""
-		# add to Support Ticket Response
-		from webnotes.model.doc import Document
-		d = Document('Support Ticket Response')
-		d.from_email = from_email or webnotes.user.name
-		d.parent = self.doc.name
-		d.parenttype = "Support Ticket"
-		d.parentfield = "responses"
-		d.mail = response
-		d.content_type = content_type
+		# add to Communication
+		import email.utils
+
+		d = webnotes.doc('Communication')
+		d.naming_series = "COMM-"
+		d.subject = self.doc.subject
+		d.email_address = from_email or webnotes.user.name
+		email_addr = email.utils.parseaddr(d.email_address)[1]
+		d.contact = webnotes.conn.get_value("Contact", {"email_id": email_addr}, "name") or None
+		d.lead = webnotes.conn.get_value("Lead", {"email_id": email_addr}, "name") or None
+		d.support_ticket = self.doc.name
+		d.content = response
+		d.communication_medium = "Email"
 		d.save(1)
 		
 	def close_ticket(self):
diff --git a/support/doctype/support_ticket/support_ticket.txt b/support/doctype/support_ticket/support_ticket.txt
index c1622ab..d261c16 100644
--- a/support/doctype/support_ticket/support_ticket.txt
+++ b/support/doctype/support_ticket/support_ticket.txt
@@ -1,411 +1,335 @@
-# DocType, Support Ticket
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-02 16:02:42',
-		'docstatus': 0,
-		'modified': '2012-05-02 11:33:24',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1311584009',
-		'allow_attach': 1,
-		'allow_trash': 1,
-		'colour': u'White:FFF',
-		'default_print_format': u'Standard',
-		'doctype': 'DocType',
-		'module': u'Support',
-		'name': '__common__',
-		'search_fields': u'status,customer,allocated_to,subject,raised_by',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'subject': u'%(subject)s',
-		'tag_fields': u'status,allocated_to',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Support Ticket',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Support Ticket',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'submit': 0
-	},
-
-	# DocType, Support Ticket
-	{
-		'doctype': 'DocType',
-		'name': u'Support Ticket'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Guest',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Customer',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Support Team',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Support Team',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 2,
-		'role': u'Support Team',
-		'write': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'naming_series',
-		'fieldtype': u'Select',
-		'hidden': 0,
-		'label': u'Naming Series',
-		'no_copy': 1,
-		'options': u'SUP',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Open',
-		'doctype': u'DocField',
-		'fieldname': u'status',
-		'fieldtype': u'Select',
-		'in_filter': 0,
-		'label': u'Status',
-		'no_copy': 1,
-		'oldfieldname': u'status',
-		'oldfieldtype': u'Select',
-		'options': u'\nOpen\nTo Reply\nWaiting for Customer\nHold\nClosed',
-		'permlevel': 1,
-		'reqd': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'subject',
-		'fieldtype': u'Text',
-		'in_filter': 1,
-		'label': u'Subject',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'raised_by',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Raised By (Email)',
-		'oldfieldname': u'raised_by',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Description',
-		'oldfieldname': u'problem_description',
-		'oldfieldtype': u'Text',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:!doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'thread_html',
-		'fieldtype': u'HTML',
-		'label': u'Thread HTML',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:!doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'new_response',
-		'fieldtype': u'Text',
-		'label': u'New Response',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:!doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'send',
-		'fieldtype': u'Button',
-		'label': u'Send',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'additional_info',
-		'fieldtype': u'Section Break',
-		'label': u'Additional Info',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:!doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 1,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Customer',
-		'oldfieldname': u'customer',
-		'oldfieldtype': u'Link',
-		'options': u'Customer',
-		'permlevel': 1,
-		'print_hide': 1,
-		'reqd': 0,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Customer Name',
-		'oldfieldname': u'customer_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 2,
-		'reqd': 0,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'address_display',
-		'fieldtype': u'Small Text',
-		'label': u'Address',
-		'permlevel': 2
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_display',
-		'fieldtype': u'Data',
-		'label': u'Contact Name',
-		'permlevel': 2
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_mobile',
-		'fieldtype': u'Data',
-		'label': u'Mobile No',
-		'permlevel': 2
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_email',
-		'fieldtype': u'Data',
-		'label': u'Contact Email',
-		'oldfieldname': u'contact_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 2
-	},
-
-	# DocField
-	{
-		'default': u'Today',
-		'doctype': u'DocField',
-		'fieldname': u'opening_date',
-		'fieldtype': u'Date',
-		'label': u'Opening Date',
-		'no_copy': 1,
-		'oldfieldname': u'opening_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'opening_time',
-		'fieldtype': u'Time',
-		'label': u'Opening Time',
-		'no_copy': 1,
-		'oldfieldname': u'opening_time',
-		'oldfieldtype': u'Time',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:!doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'allocated_to',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Allocated To',
-		'oldfieldname': u'allocated_to',
-		'oldfieldtype': u'Link',
-		'options': u'Profile',
-		'permlevel': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:!doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'resolution_details',
-		'fieldtype': u'Text',
-		'label': u'Resolution Details',
-		'no_copy': 1,
-		'oldfieldname': u'resolution_details',
-		'oldfieldtype': u'Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'resolution_date',
-		'fieldtype': u'Date',
-		'in_filter': 0,
-		'label': u'Resolution Date',
-		'no_copy': 1,
-		'oldfieldname': u'resolution_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:!doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'resolution_time',
-		'fieldtype': u'Time',
-		'label': u'Resolution Time',
-		'oldfieldname': u'resolution_time',
-		'oldfieldtype': u'Time',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'content_type',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Content Type',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'file_list',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'File List',
-		'no_copy': 1,
-		'permlevel': 0,
-		'print_hide': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-11-02 17:17:05", 
+  "modified_by": "Administrator", 
+  "modified": "2012-11-24 16:41:45"
+ }, 
+ {
+  "allow_attach": 1, 
+  "default_print_format": "Standard", 
+  "search_fields": "status,customer,allocated_to,subject,raised_by", 
+  "module": "Support", 
+  "doctype": "DocType", 
+  "name": "__common__"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Support Ticket", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Support Ticket", 
+  "amend": 0, 
+  "submit": 0, 
+  "doctype": "DocPerm", 
+  "read": 1, 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Support Ticket", 
+  "doctype": "DocType"
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Naming Series", 
+  "options": "SUP", 
+  "fieldname": "naming_series", 
+  "fieldtype": "Select", 
+  "reqd": 0, 
+  "hidden": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "permlevel": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "default": "Open", 
+  "fieldname": "status", 
+  "fieldtype": "Select", 
+  "search_index": 1, 
+  "reqd": 0, 
+  "options": "\nOpen\nTo Reply\nWaiting for Customer\nHold\nClosed", 
+  "in_filter": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Subject", 
+  "fieldname": "subject", 
+  "fieldtype": "Text", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Raised By (Email)", 
+  "oldfieldname": "raised_by", 
+  "fieldname": "raised_by", 
+  "fieldtype": "Data", 
+  "depends_on": "eval:doc.__islocal", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "problem_description", 
+  "fieldname": "description", 
+  "fieldtype": "Text", 
+  "depends_on": "eval:doc.__islocal", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "depends_on": "eval:!doc.__islocal", 
+  "doctype": "DocField", 
+  "label": "New Response", 
+  "fieldname": "new_response", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }, 
+ {
+  "depends_on": "eval:!doc.__islocal", 
+  "doctype": "DocField", 
+  "label": "Send", 
+  "fieldname": "send", 
+  "fieldtype": "Button", 
+  "permlevel": 0
+ }, 
+ {
+  "depends_on": "eval:!doc.__islocal", 
+  "doctype": "DocField", 
+  "label": "Thread HTML", 
+  "fieldname": "thread_html", 
+  "fieldtype": "HTML", 
+  "permlevel": 1
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Additional Info", 
+  "fieldname": "additional_info", 
+  "fieldtype": "Section Break", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "depends_on": "eval:!doc.__islocal", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Customer", 
+  "oldfieldname": "customer", 
+  "permlevel": 1, 
+  "trigger": "Client", 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 0, 
+  "options": "Customer", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Customer Name", 
+  "oldfieldname": "customer_name", 
+  "fieldname": "customer_name", 
+  "fieldtype": "Data", 
+  "search_index": 0, 
+  "reqd": 0, 
+  "permlevel": 2, 
+  "in_filter": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Address", 
+  "fieldname": "address_display", 
+  "fieldtype": "Small Text", 
+  "permlevel": 2
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Contact Name", 
+  "fieldname": "contact_display", 
+  "fieldtype": "Data", 
+  "permlevel": 2
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Mobile No", 
+  "fieldname": "contact_mobile", 
+  "fieldtype": "Data", 
+  "permlevel": 2
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Contact Email", 
+  "oldfieldname": "contact_no", 
+  "fieldname": "contact_email", 
+  "fieldtype": "Data", 
+  "permlevel": 2
+ }, 
+ {
+  "default": "Today", 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Opening Date", 
+  "oldfieldname": "opening_date", 
+  "no_copy": 1, 
+  "fieldname": "opening_date", 
+  "fieldtype": "Date", 
+  "permlevel": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Time", 
+  "doctype": "DocField", 
+  "label": "Opening Time", 
+  "oldfieldname": "opening_time", 
+  "fieldname": "opening_time", 
+  "fieldtype": "Time", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "depends_on": "eval:!doc.__islocal", 
+  "permlevel": 1
+ }, 
+ {
+  "depends_on": "eval:!doc.__islocal", 
+  "search_index": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Allocated To", 
+  "oldfieldname": "allocated_to", 
+  "permlevel": 1, 
+  "fieldname": "allocated_to", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Profile", 
+  "in_filter": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Resolution Details", 
+  "oldfieldname": "resolution_details", 
+  "fieldname": "resolution_details", 
+  "fieldtype": "Text", 
+  "depends_on": "eval:!doc.__islocal", 
+  "permlevel": 1
+ }, 
+ {
+  "depends_on": "eval:!doc.__islocal", 
+  "no_copy": 1, 
+  "search_index": 0, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Resolution Date", 
+  "oldfieldname": "resolution_date", 
+  "fieldname": "resolution_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "permlevel": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "oldfieldtype": "Time", 
+  "doctype": "DocField", 
+  "label": "Resolution Time", 
+  "oldfieldname": "resolution_time", 
+  "fieldname": "resolution_time", 
+  "fieldtype": "Time", 
+  "depends_on": "eval:!doc.__islocal", 
+  "permlevel": 1
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Content Type", 
+  "fieldname": "content_type", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "File List", 
+  "fieldname": "file_list", 
+  "fieldtype": "Text", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Guest", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Customer", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Support Team", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Support Team", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Support Team", 
+  "cancel": 0, 
+  "permlevel": 2
+ }
 ]
\ No newline at end of file
diff --git a/support/doctype/support_ticket_response/__init__.py b/support/doctype/support_ticket_response/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/support/doctype/support_ticket_response/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/support/doctype/support_ticket_response/support_ticket_response.py b/support/doctype/support_ticket_response/support_ticket_response.py
deleted file mode 100644
index 7f48feb..0000000
--- a/support/doctype/support_ticket_response/support_ticket_response.py
+++ /dev/null
@@ -1,22 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-class DocType:
-	def __init__(self, d, dl):
-		self.doc, self.doclist = d, dl
\ No newline at end of file
diff --git a/support/doctype/support_ticket_response/support_ticket_response.txt b/support/doctype/support_ticket_response/support_ticket_response.txt
deleted file mode 100644
index 7209264..0000000
--- a/support/doctype/support_ticket_response/support_ticket_response.txt
+++ /dev/null
@@ -1,64 +0,0 @@
-# DocType, Support Ticket Response
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:44',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:44',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Support',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 4
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Support Ticket Response',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Support Ticket Response
-	{
-		'doctype': 'DocType',
-		'name': u'Support Ticket Response'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'mail',
-		'fieldtype': u'Text',
-		'label': u'Mail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'from_email',
-		'fieldtype': u'Data',
-		'label': u'From Email'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'content_type',
-		'fieldtype': u'Data',
-		'label': u'Content Type'
-	}
-]
\ No newline at end of file
diff --git a/utilities/doctype/contact/contact.txt b/utilities/doctype/contact/contact.txt
index baa2a77..20aa076 100644
--- a/utilities/doctype/contact/contact.txt
+++ b/utilities/doctype/contact/contact.txt
@@ -1,257 +1,301 @@
-# DocType, Contact
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 14:22:38',
-		'docstatus': 0,
-		'modified': '2012-08-02 13:16:48',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1327314958',
-		'allow_trash': 1,
-		'colour': u'White:FFF',
-		'default_print_format': u'Standard',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'in_create': 0,
-		'in_dialog': 1,
-		'module': u'Utilities',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'subject': u'%(first_name)s %(last_name)s - Email: %(email_id)s | Contact: %(phone)s | Mobile: %(mobile_no)s',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Contact',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Contact
-	{
-		'doctype': 'DocType',
-		'name': u'Contact'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'contact_details',
-		'fieldtype': u'Section Break',
-		'label': u'Contact Details',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'first_name',
-		'fieldtype': u'Data',
-		'label': u'First Name',
-		'oldfieldname': u'first_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'last_name',
-		'fieldtype': u'Data',
-		'label': u'Last Name',
-		'oldfieldname': u'last_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.supplier && !doc.sales_partner',
-		'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'label': u'Customer',
-		'oldfieldname': u'customer',
-		'oldfieldtype': u'Link',
-		'options': u'Customer',
-		'permlevel': 0,
-		'print_hide': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.supplier && !doc.sales_partner',
-		'doctype': u'DocField',
-		'fieldname': u'customer_name',
-		'fieldtype': u'Data',
-		'label': u'Customer Name',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.customer && !doc.sales_partner',
-		'doctype': u'DocField',
-		'fieldname': u'supplier',
-		'fieldtype': u'Link',
-		'label': u'Supplier',
-		'options': u'Supplier',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 0,
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.customer && !doc.sales_partner',
-		'doctype': u'DocField',
-		'fieldname': u'supplier_name',
-		'fieldtype': u'Data',
-		'label': u'Supplier Name',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.customer && !doc.supplier',
-		'doctype': u'DocField',
-		'fieldname': u'sales_partner',
-		'fieldtype': u'Link',
-		'label': u'Sales Partner',
-		'options': u'Sales Partner',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'0',
-		'depends_on': u'eval:(doc.customer || doc.supplier || doc.sales_partner)',
-		'doctype': u'DocField',
-		'fieldname': u'is_primary_contact',
-		'fieldtype': u'Check',
-		'label': u'Is Primary Contact',
-		'oldfieldname': u'is_primary_contact',
-		'oldfieldtype': u'Select',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'email_id',
-		'fieldtype': u'Data',
-		'label': u'Email Id',
-		'oldfieldname': u'email_id',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'phone',
-		'fieldtype': u'Data',
-		'label': u'Phone',
-		'oldfieldname': u'contact_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'mobile_no',
-		'fieldtype': u'Data',
-		'label': u'Mobile No',
-		'oldfieldname': u'mobile_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Enter department to which this Contact belongs',
-		'doctype': u'DocField',
-		'fieldname': u'department',
-		'fieldtype': u'Data',
-		'label': u'Department',
-		'options': u'Suggest',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Enter designation of this Contact',
-		'doctype': u'DocField',
-		'fieldname': u'designation',
-		'fieldtype': u'Data',
-		'label': u'Designation',
-		'options': u'Suggest',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'unsubscribed',
-		'fieldtype': u'Check',
-		'label': u'Unsubscribed',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-06 11:15:46", 
+  "modified_by": "Administrator", 
+  "modified": "2012-11-24 15:10:53"
+ }, 
+ {
+  "in_create": 0, 
+  "default_print_format": "Standard", 
+  "doctype": "DocType", 
+  "module": "Utilities", 
+  "in_dialog": 1, 
+  "document_type": "Master", 
+  "name": "__common__"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Contact", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Contact", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Contact", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Contact Details", 
+  "fieldname": "contact_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "First Name", 
+  "oldfieldname": "first_name", 
+  "fieldname": "first_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Last Name", 
+  "oldfieldname": "last_name", 
+  "fieldname": "last_name", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Customer", 
+  "oldfieldname": "customer", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "depends_on": "eval:!doc.supplier && !doc.sales_partner", 
+  "options": "Customer"
+ }, 
+ {
+  "depends_on": "eval:!doc.supplier && !doc.sales_partner", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Customer Name", 
+  "fieldname": "customer_name", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "depends_on": "eval:!doc.customer && !doc.sales_partner", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Supplier", 
+  "trigger": "Client", 
+  "fieldname": "supplier", 
+  "fieldtype": "Link", 
+  "options": "Supplier", 
+  "permlevel": 0
+ }, 
+ {
+  "depends_on": "eval:!doc.customer && !doc.sales_partner", 
+  "colour": "White:FFF", 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Supplier Name", 
+  "fieldname": "supplier_name", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "depends_on": "eval:!doc.customer && !doc.supplier", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Sales Partner", 
+  "options": "Sales Partner", 
+  "fieldname": "sales_partner", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "default": "0", 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Is Primary Contact", 
+  "oldfieldname": "is_primary_contact", 
+  "fieldname": "is_primary_contact", 
+  "fieldtype": "Check", 
+  "depends_on": "eval:(doc.customer || doc.supplier || doc.sales_partner)", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Email Id", 
+  "oldfieldname": "email_id", 
+  "fieldname": "email_id", 
+  "fieldtype": "Data", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Phone", 
+  "oldfieldname": "contact_no", 
+  "fieldname": "phone", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Mobile No", 
+  "oldfieldname": "mobile_no", 
+  "fieldname": "mobile_no", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Enter department to which this Contact belongs", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Department", 
+  "options": "Suggest", 
+  "fieldname": "department", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Enter designation of this Contact", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Designation", 
+  "options": "Suggest", 
+  "fieldname": "designation", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Unsubscribed", 
+  "fieldname": "unsubscribed", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Sales Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Purchase Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Purchase Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Maintenance Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales User", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Purchase User", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Maintenance User", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts User", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocPerm", 
+  "role": "All", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/utilities/page/calendar/calendar.html b/utilities/page/calendar/calendar.html
index 11dd3bf..0f8cc0e 100644
--- a/utilities/page/calendar/calendar.html
+++ b/utilities/page/calendar/calendar.html
@@ -13,7 +13,7 @@
 		<button class="btn btn-small" onclick="erpnext.calendar.refresh('Month')">
 			Month View
 		</button>
-		<button class="btn btn-small" onclick="erpnext.calendar.refresh()">
+		<button class="btn btn-small" onclick="erpnext.calendar.refresh(null, true)">
 			<i class="icon-refresh"></i> Refresh
 		</button>
 	</div>
diff --git a/utilities/page/calendar/calendar.js b/utilities/page/calendar/calendar.js
index 0f4ff3b..e7abbab 100644
--- a/utilities/page/calendar/calendar.js
+++ b/utilities/page/calendar/calendar.js
@@ -241,9 +241,19 @@
 
 //------------------------------------------------------
 
-Calendar.prototype.refresh = function(viewtype){//Sets the viewtype of the Calendar and Calls the View class based on the viewtype
+Calendar.prototype.clear = function() {
+	this.events = {};
+	this.events_by_name = {};
+	locals.Event = {};
+}
+
+Calendar.prototype.refresh = function(viewtype, clear_events){//Sets the viewtype of the Calendar and Calls the View class based on the viewtype
  	if(viewtype)
  		this.viewtype = viewtype;
+
+	if(clear_events)
+		this.clear();
+		
  	// switch view if reqd
  	if(this.cur_view.viewtype!=this.viewtype) {
  		this.cur_view.hide();
@@ -252,6 +262,7 @@
  		this.cur_view.show();
  	}
  	else{
+ 		this.cur_view.get_events();
  		this.cur_view.refresh(this);
  	}
 }