[minor] fixes to crm patch
diff --git a/controllers/status_updater.py b/controllers/status_updater.py
index 07b812a..e457fa9 100644
--- a/controllers/status_updater.py
+++ b/controllers/status_updater.py
@@ -69,12 +69,14 @@
 		if self.doc.get("__islocal"):
 			return
 			
-		if self.doc.doctype in status_map.keys():
-			for s in status_map[self.doc.doctype].reverse():
+		if self.doc.doctype in status_map:
+			sl = status_map[self.doc.doctype][:]
+			sl.reverse()
+			for s in sl:
 				if not s[1]:
 					self.doc.status = s[0]
 					break
-				elif s[1].startwith("eval:"):
+				elif s[1].startswith("eval:"):
 					if eval(s[1][5:]):
 						self.doc.status = s[0]
 						break
@@ -89,14 +91,14 @@
 		self.set_status(update=True)
 	
 	def communication_received(self):
-		last_comm = self.doclist.get({"doctype":"Communication"})[-1]
+		last_comm = self.doclist.get({"doctype":"Communication"})
 		if last_comm:
-			return last_comm.sent_or_received == "Received"
+			return last_comm[-1].sent_or_received == "Received"
 
 	def communication_sent(self):
-		last_comm = self.doclist.get({"doctype":"Communication"})[-1]
+		last_comm = self.doclist.get({"doctype":"Communication"})
 		if last_comm:
-			return last_comm.sent_or_received == "Sent"
+			return last_comm[-1].sent_or_received == "Sent"
 			
 	def validate_qty(self):
 		"""
diff --git a/patches/october_2013/p01_update_delivery_note_prevdocs.py b/patches/october_2013/p01_update_delivery_note_prevdocs.py
index b1a16c2..75ac53f 100644
--- a/patches/october_2013/p01_update_delivery_note_prevdocs.py
+++ b/patches/october_2013/p01_update_delivery_note_prevdocs.py
@@ -5,6 +5,7 @@
 import webnotes
 
 def execute():
+	webnotes.reload_doc("stock", "doctype", "delivery_note_item")
 	webnotes.conn.sql("""update `tabDelivery Note Item` set against_sales_order=prevdoc_docname
 		where prevdoc_doctype='Sales Order' """)
 		
diff --git a/patches/october_2013/p03_crm_update_status.py b/patches/october_2013/p03_crm_update_status.py
index e5b434c..73ed1b1 100644
--- a/patches/october_2013/p03_crm_update_status.py
+++ b/patches/october_2013/p03_crm_update_status.py
@@ -29,4 +29,19 @@
 			["Waiting for Customer", "Replied"],
 			["To Reply", "Open"],
 		]
-	}	
\ No newline at end of file
+	}
+	
+	for dt, opts in change_map.items():
+		for status in opts:
+			webnotes.conn.sql("""update `tab%s` set status=%s where status=%s""" % \
+				(dt, "%s", "%s"), (status[1], status[0]))
+				
+	# for dt in ["Lead", "Opportunity"]:
+	# 	for name in webnotes.conn.sql_list("""select name from `tab%s`""" % dt):
+	# 		bean = webnotes.bean(dt, name)
+	# 		before_status = bean.doc.status
+	# 		bean.get_controller().set_status()
+	# 		
+	# 		if bean.doc.status != before_status:
+	# 			webnotes.conn.sql("""update `tab%s` set status=%s where name=%s""" % (dt, "%s", "%s"),
+	# 				(bean.doc.status, name))