Moved tasks content to newsletter.py
diff --git a/erpnext/crm/doctype/newsletter/newsletter.py b/erpnext/crm/doctype/newsletter/newsletter.py
old mode 100644
new mode 100755
index 2dc975e..be1235b
--- a/erpnext/crm/doctype/newsletter/newsletter.py
+++ b/erpnext/crm/doctype/newsletter/newsletter.py
@@ -10,7 +10,8 @@
from frappe.email.bulk import check_bulk_limit
from frappe.utils.verified_command import get_signed_params, verify_request
from frappe.utils.background_jobs import enqueue
-from erpnext.tasks import send_newsletter
+from frappe.utils.scheduler import log
+from frappe.email.bulk import send
from erpnext.crm.doctype.newsletter_list.newsletter_list import add_subscribers
class Newsletter(Document):
@@ -34,7 +35,10 @@
if getattr(frappe.local, "is_ajax", False):
self.validate_send()
- enqueue(send_newsletter, newsletter=self.name)
+
+ # using default queue with a longer timeout as this isn't a scheduled task
+ enqueue(send_newsletter, queue='default', timeout=1500, event='send_newsletter', newsletter=self.name)
+
else:
self.send_bulk()
@@ -51,8 +55,6 @@
sender = self.send_from or frappe.utils.get_formatted_email(self.owner)
- from frappe.email.bulk import send
-
if not frappe.flags.in_test:
frappe.db.auto_commit_on_many_writes = True
@@ -164,4 +166,24 @@
frappe.respond_as_web_page(_("Confirmed"), _("{0} has been successfully added to our Newsletter list.").format(email))
+def send_newsletter(newsletter):
+ try:
+ doc = frappe.get_doc("Newsletter", newsletter)
+ doc.send_bulk()
+
+ except:
+ frappe.db.rollback()
+
+ # wasn't able to send emails :(
+ doc.db_set("email_sent", 0)
+ frappe.db.commit()
+
+ log("send_newsletter")
+
+ raise
+
+ else:
+ frappe.db.commit()
+
+
diff --git a/erpnext/tasks.py b/erpnext/tasks.py
deleted file mode 100644
index f38c969..0000000
--- a/erpnext/tasks.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
-# MIT License. See license.txt
-
-from __future__ import unicode_literals
-import frappe
-from frappe.utils.scheduler import log
-
-def send_newsletter(newsletter):
- try:
- doc = frappe.get_doc("Newsletter", newsletter)
- doc.send_bulk()
-
- except:
- frappe.db.rollback()
-
- # wasn't able to send emails :(
- doc.db_set("email_sent", 0)
- frappe.db.commit()
-
- log("send_newsletter")
-
- raise
-
- else:
- frappe.db.commit()