Merge branch 'master' of github.com:webnotes/erpnext
diff --git a/crm/doctype/quotation/quotation.js b/crm/doctype/quotation/quotation.js
index bdf6781..f21df25 100644
--- a/crm/doctype/quotation/quotation.js
+++ b/crm/doctype/quotation/quotation.js
@@ -21,11 +21,6 @@
   //if(!doc.price_list_name && sys_defaults.price_list_name) set_multiple(cdt,cdn,{price_list_name:sys_defaults.price_list_name});
   if(!doc.company && sys_defaults.company) set_multiple(cdt,cdn,{company:sys_defaults.company});
   if(!doc.fiscal_year && sys_defaults.fiscal_year) set_multiple(cdt,cdn,{fiscal_year:sys_defaults.fiscal_year});
-
-  // load default charges
-  if(doc.__islocal && !getchildren('RV Tax Detail', doc.name, 'other_charges', doc.doctype).length) cur_frm.cscript.load_taxes(doc, cdt, cdn);
-
-  if(doc.__islocal==1){  cur_frm.cscript.price_list_name(doc, cdt, cdn);}
   
   if(doc.quotation_to) {
     if(doc.quotation_to == 'Customer') {
@@ -37,6 +32,12 @@
   }
 }
 
+cur_frm.cscript.onload_post_render = function(doc, dt, dn) {
+  // load default charges
+  if(doc.__islocal && !getchildren('RV Tax Detail', doc.name, 'other_charges', doc.doctype).length) 
+    cur_frm.cscript.load_taxes(doc, cdt, cdn);
+}
+
 // hide - unhide fields based on lead or customer..
 // =======================================================================================================================
 cur_frm.cscript.lead_cust_show = function(doc,cdt,cdn){
diff --git a/material_management/doctype/stock_ledger/stock_ledger.py b/material_management/doctype/stock_ledger/stock_ledger.py
index a52dae7..e67afa6 100644
--- a/material_management/doctype/stock_ledger/stock_ledger.py
+++ b/material_management/doctype/stock_ledger/stock_ledger.py
@@ -235,3 +235,10 @@
 		sle_obj.validate()
 		sle.save(new = 1)
 		return sle.name
+		
+	def repost(self):
+		"""
+		Repost everything!
+		"""
+		for wh in sql("select name from tabWarehouse"):
+			get_obj('Warehouse', wh[0]).repost_stock()
diff --git a/setup/doctype/sales_person/sales_person.py b/setup/doctype/sales_person/sales_person.py
index f085376..04a40bd 100644
--- a/setup/doctype/sales_person/sales_person.py
+++ b/setup/doctype/sales_person/sales_person.py
@@ -6,6 +6,7 @@
 from webnotes.model.code import get_obj
 from webnotes import session, form, is_testing, msgprint, errprint
 
+
 sql = webnotes.conn.sql
 convert_to_lists = webnotes.conn.convert_to_lists
 	
@@ -36,7 +37,7 @@
 
 
   def validate(self): 
-
+	from webnotes.utils import flt
     for d in getlist(self.doclist, 'target_details'):
       if not flt(d.target_qty) and not flt(d.target_amount):
         msgprint("Either target qty or target amount is mandatory.")
diff --git a/setup/doctype/setup_control/setup_control.py b/setup/doctype/setup_control/setup_control.py
index 9712860..02fd573 100644
--- a/setup/doctype/setup_control/setup_control.py
+++ b/setup/doctype/setup_control/setup_control.py
@@ -142,23 +142,27 @@
   # Create Profile
   # --------------
   def create_profile(self, user_email, user_fname, user_lname):
-    roles_list = ['System Manager','Sales Manager','Sales User','Purchase Manager','Purchase User','Material Manager','Material User','Accounts Manager','Accounts User','HR Manager','HR User','Production Manager','Production User','Sales Master Manager','Purchase Master Manager','Material Master Manager','Quality Manager','Maintenance User','Maintenance Manager']
     pr = Document('Profile')
     pr.first_name = user_fname
     pr.last_name = user_lname
     pr.email = user_email
     pr.enabled = 1
     pr.save(1)
+	self.add_roles(pr)
+
+  def add_roles(self, pr):
+    roles_list = ['System Manager','Sales Manager','Sales User','Purchase Manager','Purchase User','Material Manager','Material User','Accounts Manager','Accounts User','HR Manager','HR User','Production Manager','Production User','Sales Master Manager','Purchase Master Manager','Material Master Manager','Quality Manager','Maintenance User','Maintenance Manager']
     for r in roles_list:
       d = addchild(pr, 'userroles', 'UserRole', 1)
       d.role = r
-      d.save()
+      d.save(1)
+
     # Add roles to Administrator profile
     pr_obj = get_obj('Profile','Administrator')
     for r in roles_list:
       d = addchild(pr_obj.doc,'userroles', 'UserRole', 1)
       d.role = r
-      d.save()
+      d.save(1)
   
   # Update WN ERP Client Control
   # -----------------------------