mirror of
https://github.com/frappe/erpnext.git
synced 2026-05-25 07:54:46 +00:00
Newsletter: Bulk Send via worker
This commit is contained in:
29
erpnext/tasks.py
Normal file
29
erpnext/tasks.py
Normal file
@@ -0,0 +1,29 @@
|
||||
# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors
|
||||
# MIT License. See license.txt
|
||||
|
||||
from __future__ import unicode_literals
|
||||
import frappe
|
||||
from frappe.celery_app import celery_task, task_logger
|
||||
|
||||
@celery_task()
|
||||
def send_newsletter(site, newsletter):
|
||||
try:
|
||||
frappe.connect(site=site)
|
||||
doc = frappe.get_doc("Newsletter", newsletter)
|
||||
doc.send_bulk()
|
||||
|
||||
except:
|
||||
frappe.db.rollback()
|
||||
task_logger.warn(frappe.get_traceback())
|
||||
|
||||
# wasn't able to send emails :(
|
||||
doc.db_set("email_sent", 0)
|
||||
frappe.db.commit()
|
||||
|
||||
raise
|
||||
|
||||
else:
|
||||
frappe.db.commit()
|
||||
|
||||
finally:
|
||||
frappe.destroy()
|
||||
Reference in New Issue
Block a user