Merge branch 'master' of github.com:webnotes/erpnext into handlerupdate
diff --git a/erpnext/setup/doctype/email_digest/email_digest.py b/erpnext/setup/doctype/email_digest/email_digest.py
index c5989bb..ff9bf68 100644
--- a/erpnext/setup/doctype/email_digest/email_digest.py
+++ b/erpnext/setup/doctype/email_digest/email_digest.py
@@ -282,7 +282,8 @@
Returns start and end date depending on the frequency of email digest
"""
from datetime import datetime, date, timedelta
- today = datetime.now().date()
+ from webnotes.utils import now_datetime
+ today = now_datetime().date()
year, month, day = today.year, today.month, today.day
if self.doc.frequency == 'Daily':
@@ -409,6 +410,7 @@
from webnotes.utils.email_lib import sendmail
try:
+ #webnotes.msgprint('in send')
sendmail(
recipients=recipient_list,
sender='notifications+email_digest@erpnext.com',
@@ -419,64 +421,22 @@
)
except Exception, e:
webnotes.msgprint('There was a problem in sending your email. Please contact support@erpnext.com')
- #webnotes.errprint(webnotes.getTraceback())
+ webnotes.errprint(webnotes.getTraceback())
def get_next_sending(self):
- """
-
- """
- # Get TimeZone
- # Get System TimeZone
- import time
- from pytz import timezone
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
- }
-
+ send_date = end_date + datetime.timedelta(days=1)
+
from webnotes.utils import formatdate
- str_date = formatdate(str(res['app_dt'].date()))
- str_time = res['app_dt'].time().strftime('%I:%M')
+ str_date = formatdate(str(send_date))
- self.doc.next_send = str_date + " at about " + str_time
+ self.doc.next_send = str_date + " at midnight"
- 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)
+ return send_date
def onload(self):
@@ -743,21 +703,16 @@
""", as_list=1)
from webnotes.model.code import get_obj
- from datetime import datetime, timedelta
- now = datetime.now()
- now_date = now.date()
- now_time = (now + timedelta(hours=2)).time()
+ from webnotes.utils import now_datetime
+ now_date = now_datetime().date()
+
for ed in edigest_list:
if ed[0]:
ed_obj = get_obj('Email Digest', ed[0])
ed_obj.sending = True
- dt_dict = ed_obj.get_next_sending()
- send_date = dt_dict['server_dt'].date()
- send_time = dt_dict['server_dt'].time()
+ send_date = ed_obj.get_next_sending()
+ #webnotes.msgprint([ed[0], now_date, send_date])
if (now_date == send_date):
- #webnotes.msgprint('sending ' + ed_obj.doc.name)
ed_obj.send()
- #else:
- # webnotes.msgprint('not sending ' + ed_obj.doc.name)