added naming series for campaign #1413
diff --git a/erpnext/selling/doctype/campaign/campaign.js b/erpnext/selling/doctype/campaign/campaign.js
index 3347957..2325b58 100644
--- a/erpnext/selling/doctype/campaign/campaign.js
+++ b/erpnext/selling/doctype/campaign/campaign.js
@@ -1,2 +1,9 @@
 // Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors
-// License: GNU General Public License v3. See license.txt
\ No newline at end of file
+// License: GNU General Public License v3. See license.txt
+
+frappe.ui.form.on("Campaign", "refresh", function(frm) {
+	erpnext.hide_naming_series();
+	if(frappe.boot.sysdefaults.campaign_naming_by!="Naming Series") {
+		hide_field("naming_series");
+	}
+})
diff --git a/erpnext/selling/doctype/campaign/campaign.json b/erpnext/selling/doctype/campaign/campaign.json
index 83b5d27..7d02d22 100644
--- a/erpnext/selling/doctype/campaign/campaign.json
+++ b/erpnext/selling/doctype/campaign/campaign.json
@@ -8,7 +8,7 @@
  "allow_print": null, 
  "allow_rename": 1, 
  "allow_trash": null, 
- "autoname": "field:campaign_name", 
+ "autoname": "naming_series:", 
  "change_log": null, 
  "client_script": null, 
  "client_script_core": null, 
@@ -33,7 +33,7 @@
    "hidden": null, 
    "ignore_restrictions": null, 
    "in_filter": null, 
-   "in_list_view": 1, 
+   "in_list_view": 0, 
    "label": "Campaign", 
    "no_column": null, 
    "no_copy": null, 
@@ -56,34 +56,6 @@
    "default": null, 
    "depends_on": null, 
    "description": null, 
-   "fieldname": "naming_series", 
-   "fieldtype": "Select", 
-   "hidden": null, 
-   "ignore_restrictions": null, 
-   "in_filter": null, 
-   "in_list_view": 1, 
-   "label": "Naming Series", 
-   "no_column": null, 
-   "no_copy": null, 
-   "oldfieldname": null, 
-   "oldfieldtype": null, 
-   "options": null, 
-   "permlevel": 0, 
-   "print_hide": null, 
-   "print_width": null, 
-   "read_only": null, 
-   "report_hide": null, 
-   "reqd": 1, 
-   "search_index": null, 
-   "set_only_once": null, 
-   "trigger": null, 
-   "width": null
-  }, 
-  {
-   "allow_on_submit": null, 
-   "default": null, 
-   "depends_on": null, 
-   "description": null, 
    "fieldname": "campaign_name", 
    "fieldtype": "Data", 
    "hidden": null, 
@@ -112,6 +84,34 @@
    "default": null, 
    "depends_on": null, 
    "description": null, 
+   "fieldname": "naming_series", 
+   "fieldtype": "Select", 
+   "hidden": null, 
+   "ignore_restrictions": null, 
+   "in_filter": null, 
+   "in_list_view": 0, 
+   "label": "Naming Series", 
+   "no_column": null, 
+   "no_copy": null, 
+   "oldfieldname": null, 
+   "oldfieldtype": null, 
+   "options": "Campaign-.####", 
+   "permlevel": 0, 
+   "print_hide": null, 
+   "print_width": null, 
+   "read_only": null, 
+   "report_hide": null, 
+   "reqd": 0, 
+   "search_index": null, 
+   "set_only_once": null, 
+   "trigger": null, 
+   "width": null
+  }, 
+  {
+   "allow_on_submit": null, 
+   "default": null, 
+   "depends_on": null, 
+   "description": null, 
    "fieldname": "description", 
    "fieldtype": "Text", 
    "hidden": null, 
@@ -148,7 +148,7 @@
  "istable": null, 
  "max_attachments": null, 
  "menu_index": null, 
- "modified": "2014-04-16 12:19:51.541872", 
+ "modified": "2014-04-16 12:36:34.606593", 
  "modified_by": "Administrator", 
  "module": "Selling", 
  "name": "Campaign", 
diff --git a/erpnext/selling/doctype/campaign/campaign.py b/erpnext/selling/doctype/campaign/campaign.py
index 88bb782..c59570c 100644
--- a/erpnext/selling/doctype/campaign/campaign.py
+++ b/erpnext/selling/doctype/campaign/campaign.py
@@ -5,10 +5,11 @@
 import frappe
 
 from frappe.model.document import Document
+from frappe.model.naming import make_autoname
 
 class Campaign(Document):
 	def autoname(self):
-		if frappe.defaults.get_global_default('campaign_naming_by') == 'Campaign Name':
+		if frappe.defaults.get_global_default('campaign_naming_by') != 'Naming Series':
 			self.name = self.campaign_name
 		else:
 			self.name = make_autoname(self.naming_series+'.#####')
diff --git a/erpnext/selling/doctype/selling_settings/selling_settings.py b/erpnext/selling/doctype/selling_settings/selling_settings.py
index 69273e0..e31c27f 100644
--- a/erpnext/selling/doctype/selling_settings/selling_settings.py
+++ b/erpnext/selling/doctype/selling_settings/selling_settings.py
@@ -9,12 +9,12 @@
 from frappe.model.document import Document
 
 class SellingSettings(Document):
-		
+
 	def validate(self):
-		for key in ["cust_master_name", "customer_group", "territory", "maintain_same_sales_rate",
-			"editable_price_list_rate", "selling_price_list"]:
+		for key in ["cust_master_name", "campaign_naming_by", "customer_group", "territory",
+			"maintain_same_sales_rate", "editable_price_list_rate", "selling_price_list"]:
 				frappe.db.set_default(key, self.get(key, ""))
 
 		from erpnext.setup.doctype.naming_series.naming_series import set_by_naming_series
-		set_by_naming_series("Customer", "customer_name", 
+		set_by_naming_series("Customer", "customer_name",
 			self.get("cust_master_name")=="Naming Series", hide_name_field=False)