Changes in email digest
diff --git a/erpnext/setup/doctype/email_digest/email_digest.py b/erpnext/setup/doctype/email_digest/email_digest.py
index 9c395c3..35dcf5b 100644
--- a/erpnext/setup/doctype/email_digest/email_digest.py
+++ b/erpnext/setup/doctype/email_digest/email_digest.py
@@ -378,8 +378,43 @@
 			webnotes.msgprint('There was a problem in sending your email. Please contact support@erpnext.com')
 			#webnotes.errprint(webnotes.getTraceback())
 
+
+	def on_update(self):
+		"""
+
+		"""
+		import webnotes
+		args = {
+			'db_name': webnotes.conn.get_value('Control Panel', '', 'account_id'),
+			'event': 'setup.doctype.email_digest.email_digest.send'
+		}
+		from webnotes.utils.scheduler import Scheduler
+		sch = Scheduler()
+		sch.connect()
+
+		if self.doc.enabled == 1:
+			# Create scheduler entry
+			res = sch.conn.sql("""
+				SELECT * FROM Event
+				WHERE
+					db_name = %(db_name)s AND
+					event = %(event)s
+			""", args)
+
+			if not (res and res[0]):
+				args['next_execution'] = self.get_next_execution()
+				
+				sch.conn.sql("""
+					INSERT INTO	Event (db_name, event, `interval`, next_execution, recurring)
+					VALUES (%(db_name)s, %(event)s, 86400, %(next_execution)s, 1)
+				""", args)
+
+		else:
+			# delete scheduler entry
+			sch.clear(args['db_name'], args['event'])
 	
-	def schedule(self):
+
+	def get_next_sending(self):
 		"""
 
 		"""
@@ -387,7 +422,65 @@
 		# Get System TimeZone
 		import time
 		from pytz import timezone
-		server_tz = timezone(time.tzname[0])
+		import datetime
+		import webnotes.defs
 		cp = webnotes.model.doc.Document('Control Panel','Control Panel')
 		app_tz = timezone(cp.time_zone)
+		server_tz = timezone(getattr(webnotes.defs, 'system_timezone'))
+		
+		start_date, end_date = self.get_start_end_dates()
+		
+		new_date = end_date + datetime.timedelta(days=1)
+		new_time = datetime.time(hour=6)
+
+		naive_dt = datetime.datetime.combine(new_date, new_time)
+		app_dt = app_tz.localize(naive_dt)
+		server_dt = server_tz.normalize(app_dt.astimezone(server_tz))
+
+		res = {
+			'app_dt': app_dt.replace(tzinfo=None),
+			'app_tz': app_tz,
+			'server_dt': server_dt.replace(tzinfo=None),
+			'server_tz': server_tz
+		}
+
+		from webnotes.utils import formatdate
+		str_date = formatdate(str(res['app_dt'].date()))
+		str_time = res['app_dt'].time().strftime('%I:%M')
+
+		self.doc.next_send = str_date + " at " + str_time
+
+		return res
+
+
+	def get_next_execution(self):
+		"""
+
+		"""
+		from datetime import datetime, timedelta
+		dt_args = self.get_next_sending()
+		server_dt = dt_args['server_dt']
+		now_dt = datetime.now(dt_args['server_tz'])
+		if now_dt.time() <= server_dt.time():
+			next_date = now_dt.date()
+		else:
+			next_date = now_dt.date() + timedelta(days=1)
+
+		next_time = server_dt.time()
+
+		return datetime.combine(next_date, next_time)
+
+
+	def onload(self):
+		"""
+
+		"""
+		self.get_next_sending()
+
+
+def send():
+	"""
+
+	"""
+	pass
 
diff --git a/erpnext/setup/doctype/email_digest/email_digest.txt b/erpnext/setup/doctype/email_digest/email_digest.txt
index 34822ed..af50c74 100644
--- a/erpnext/setup/doctype/email_digest/email_digest.txt
+++ b/erpnext/setup/doctype/email_digest/email_digest.txt
@@ -5,14 +5,14 @@
 	{
 		'creation': '2011-11-28 13:11:56',
 		'docstatus': 0,
-		'modified': '2011-12-05 18:54:27',
+		'modified': '2011-12-06 18:49:23',
 		'modified_by': 'Administrator',
 		'owner': 'Administrator'
 	},
 
 	# These values are common for all DocType
 	{
-		'_last_update': '1323083188',
+		'_last_update': '1323177411',
 		'autoname': 'Prompt',
 		'colour': 'White:FFF',
 		'doctype': 'DocType',
@@ -21,7 +21,7 @@
 		'name': '__common__',
 		'section_style': 'Simple',
 		'show_in_menu': 0,
-		'version': 61
+		'version': 66
 	},
 
 	# These values are common for all DocField
@@ -114,8 +114,8 @@
 	# DocField
 	{
 		'doctype': 'DocField',
-		'fieldname': 'next_send_datetime',
-		'fieldtype': 'Text',
+		'fieldname': 'next_send',
+		'fieldtype': 'Data',
 		'label': 'Next email will be sent on:',
 		'permlevel': 1
 	},