WIP code migration from Celery to RQ
diff --git a/erpnext/crm/doctype/newsletter/newsletter.py b/erpnext/crm/doctype/newsletter/newsletter.py
index 52d3178..2dc975e 100644
--- a/erpnext/crm/doctype/newsletter/newsletter.py
+++ b/erpnext/crm/doctype/newsletter/newsletter.py
@@ -9,7 +9,8 @@
 from frappe.model.document import Document
 from frappe.email.bulk import check_bulk_limit
 from frappe.utils.verified_command import get_signed_params, verify_request
-import erpnext.tasks
+from frappe.utils.background_jobs import enqueue
+from erpnext.tasks import send_newsletter
 from erpnext.crm.doctype.newsletter_list.newsletter_list import add_subscribers
 
 class Newsletter(Document):
@@ -32,11 +33,8 @@
 		self.recipients = self.get_recipients()
 
 		if getattr(frappe.local, "is_ajax", False):
-			# to avoid request timed out!
 			self.validate_send()
-
-			# hack! event="bulk_long" to queue in longjob queue
-			erpnext.tasks.send_newsletter.delay(frappe.local.site, self.name, event="bulk_long")
+			enqueue(send_newsletter, newsletter=self.name)
 		else:
 			self.send_bulk()
 
diff --git a/erpnext/tasks.py b/erpnext/tasks.py
index cef0ac9..f38c969 100644
--- a/erpnext/tasks.py
+++ b/erpnext/tasks.py
@@ -3,23 +3,16 @@
 
 from __future__ import unicode_literals
 import frappe
-from frappe.celery_app import celery_task, task_logger
 from frappe.utils.scheduler import log
 
-@celery_task()
-def send_newsletter(site, newsletter, event):
-	# hack! pass event="bulk_long" to queue in longjob queue
+def send_newsletter(newsletter):
 	try:
-		frappe.connect(site=site)
 		doc = frappe.get_doc("Newsletter", newsletter)
 		doc.send_bulk()
 
 	except:
 		frappe.db.rollback()
 
-		task_logger.error(site)
-		task_logger.error(frappe.get_traceback())
-
 		# wasn't able to send emails :(
 		doc.db_set("email_sent", 0)
 		frappe.db.commit()
@@ -30,6 +23,3 @@
 
 	else:
 		frappe.db.commit()
-
-	finally:
-		frappe.destroy()