From 8a065e0028162a27b19610cc976864f8655e9ada Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Wed, 22 Jun 2016 12:58:39 +0530 Subject: [PATCH] [rename] Bulk Email to Email Queue --- .../request_for_quotation.py | 2 +- erpnext/config/hr.py | 2 +- erpnext/crm/doctype/newsletter/newsletter.py | 20 +++++++++---------- .../crm/doctype/newsletter/test_newsletter.py | 6 +++--- erpnext/hr/doctype/employee/employee.py | 3 +-- erpnext/hr/doctype/employee/test_employee.py | 6 +++--- erpnext/hr/doctype/salary_slip/salary_slip.py | 3 +-- .../doctype/salary_slip/test_salary_slip.py | 12 +++++------ erpnext/projects/doctype/project/project.py | 2 +- .../doctype/email_digest/email_digest.py | 1 - 10 files changed, 27 insertions(+), 30 deletions(-) diff --git a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.py b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.py index e2ee3740b9..b02c22ed90 100644 --- a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.py +++ b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.py @@ -101,7 +101,7 @@ class RequestforQuotation(BuyingController): frappe.sendmail(recipients=data.email_id, sender=sender, subject=subject, message=frappe.get_template(template).render(args), - attachments = [frappe.attach_print('Request for Quotation', self.name)],as_bulk=True) + attachments = [frappe.attach_print('Request for Quotation', self.name)]) frappe.msgprint(_("Email sent to supplier {0}").format(data.supplier)) @frappe.whitelist() diff --git a/erpnext/config/hr.py b/erpnext/config/hr.py index eea65b8cec..110aea9d8f 100644 --- a/erpnext/config/hr.py +++ b/erpnext/config/hr.py @@ -15,7 +15,7 @@ def get_data(): "type": "doctype", "name": "Employee Attendance Tool", "label": _("Employee Attendance Tool"), - "description":_("Mark Employee Attendance in Bulk"), + "description":_("Mark Attendance for multiple employees"), "hide_count": True }, { diff --git a/erpnext/crm/doctype/newsletter/newsletter.py b/erpnext/crm/doctype/newsletter/newsletter.py index be1235b0af..dbf7dde54a 100755 --- a/erpnext/crm/doctype/newsletter/newsletter.py +++ b/erpnext/crm/doctype/newsletter/newsletter.py @@ -7,23 +7,23 @@ import frappe import frappe.utils from frappe import throw, _ from frappe.model.document import Document -from frappe.email.bulk import check_bulk_limit +from frappe.email.queue import check_email_limit from frappe.utils.verified_command import get_signed_params, verify_request from frappe.utils.background_jobs import enqueue from frappe.utils.scheduler import log -from frappe.email.bulk import send +from frappe.email.queue import send from erpnext.crm.doctype.newsletter_list.newsletter_list import add_subscribers class Newsletter(Document): def onload(self): if self.email_sent: self.get("__onload").status_count = dict(frappe.db.sql("""select status, count(name) - from `tabBulk Email` where reference_doctype=%s and reference_name=%s + from `tabEmail Queue` where reference_doctype=%s and reference_name=%s group by status""", (self.doctype, self.name))) or None def test_send(self, doctype="Lead"): self.recipients = frappe.utils.split_emails(self.test_email_id) - self.send_bulk() + self.queue_all() frappe.msgprint(_("Scheduled to send to {0}").format(self.test_email_id)) def send_emails(self): @@ -40,13 +40,13 @@ class Newsletter(Document): enqueue(send_newsletter, queue='default', timeout=1500, event='send_newsletter', newsletter=self.name) else: - self.send_bulk() + self.queue_all() frappe.msgprint(_("Scheduled to send to {0} recipients").format(len(self.recipients))) frappe.db.set(self, "email_sent", 1) - def send_bulk(self): + def queue_all(self): if not self.get("recipients"): # in case it is called via worker self.recipients = self.get_recipients() @@ -63,7 +63,7 @@ class Newsletter(Document): reference_doctype = self.doctype, reference_name = self.name, unsubscribe_method = "/api/method/erpnext.crm.doctype.newsletter.newsletter.unsubscribe", unsubscribe_params = {"name": self.newsletter_list}, - bulk_priority = 0) + send_priority = 0) if not frappe.flags.in_test: frappe.db.auto_commit_on_many_writes = False @@ -76,7 +76,7 @@ class Newsletter(Document): def validate_send(self): if self.get("__islocal"): throw(_("Please save the Newsletter before sending")) - check_bulk_limit(self.recipients) + check_email_limit(self.recipients) @frappe.whitelist() def get_lead_options(): @@ -144,7 +144,7 @@ def subscribe(email):

{3}

""" - frappe.sendmail(email, subject=_("Confirm Your Email"), content=content.format(*messages), bulk=True) + frappe.sendmail(email, subject=_("Confirm Your Email"), content=content.format(*messages)) @frappe.whitelist(allow_guest=True) def confirm_subscription(email): @@ -169,7 +169,7 @@ def confirm_subscription(email): def send_newsletter(newsletter): try: doc = frappe.get_doc("Newsletter", newsletter) - doc.send_bulk() + doc.queue_all() except: frappe.db.rollback() diff --git a/erpnext/crm/doctype/newsletter/test_newsletter.py b/erpnext/crm/doctype/newsletter/test_newsletter.py index 580982ad50..2019b656b0 100644 --- a/erpnext/crm/doctype/newsletter/test_newsletter.py +++ b/erpnext/crm/doctype/newsletter/test_newsletter.py @@ -22,7 +22,7 @@ class TestNewsletter(unittest.TestCase): def test_send(self): self.send_newsletter() - self.assertEquals(len(frappe.get_all("Bulk Email")), 3) + self.assertEquals(len(frappe.get_all("Email Queue")), 3) def test_unsubscribe(self): # test unsubscribe @@ -33,10 +33,10 @@ class TestNewsletter(unittest.TestCase): unsubscribe(email, "_Test Newsletter List") self.send_newsletter() - self.assertEquals(len(frappe.get_all("Bulk Email")), 2) + self.assertEquals(len(frappe.get_all("Email Queue")), 2) def send_newsletter(self): - frappe.db.sql("delete from `tabBulk Email`") + frappe.db.sql("delete from `tabEmail Queue`") frappe.delete_doc("Newsletter", "_Test Newsletting") newsletter = frappe.get_doc({ "doctype": "Newsletter", diff --git a/erpnext/hr/doctype/employee/employee.py b/erpnext/hr/doctype/employee/employee.py index 9e02baf6ab..4919229114 100755 --- a/erpnext/hr/doctype/employee/employee.py +++ b/erpnext/hr/doctype/employee/employee.py @@ -239,8 +239,7 @@ def send_birthday_reminders(): frappe.sendmail(recipients=filter(lambda u: u not in (e.company_email, e.personal_email, e.user_id), users), subject=_("Birthday Reminder for {0}").format(e.employee_name), message=_("""Today is {0}'s birthday!""").format(e.employee_name), - reply_to=e.company_email or e.personal_email or e.user_id, - bulk=True) + reply_to=e.company_email or e.personal_email or e.user_id) def get_employees_who_are_born_today(): """Get Employee properties whose birthday is today.""" diff --git a/erpnext/hr/doctype/employee/test_employee.py b/erpnext/hr/doctype/employee/test_employee.py index dbd510bfd9..a2fed53623 100644 --- a/erpnext/hr/doctype/employee/test_employee.py +++ b/erpnext/hr/doctype/employee/test_employee.py @@ -20,7 +20,7 @@ class TestEmployee(unittest.TestCase): self.assertTrue(employee.name in [e.name for e in get_employees_who_are_born_today()]) - frappe.db.sql("delete from `tabBulk Email`") + frappe.db.sql("delete from `tabEmail Queue`") hr_settings = frappe.get_doc("HR Settings", "HR Settings") hr_settings.stop_birthday_reminders = 0 @@ -28,7 +28,7 @@ class TestEmployee(unittest.TestCase): send_birthday_reminders() - bulk_mails = frappe.db.sql("""select * from `tabBulk Email`""", as_dict=True) + email_queue = frappe.db.sql("""select * from `tabEmail Queue`""", as_dict=True) self.assertTrue("Subject: Birthday Reminder for {0}".format(employee.employee_name) \ - in bulk_mails[0].message) + in email_queue[0].message) diff --git a/erpnext/hr/doctype/salary_slip/salary_slip.py b/erpnext/hr/doctype/salary_slip/salary_slip.py index 0c1f8c88b5..d1fac25ef2 100644 --- a/erpnext/hr/doctype/salary_slip/salary_slip.py +++ b/erpnext/hr/doctype/salary_slip/salary_slip.py @@ -214,7 +214,6 @@ class SalarySlip(TransactionBase): if receiver: subj = 'Salary Slip - ' + cstr(self.month) +'/'+cstr(self.fiscal_year) frappe.sendmail([receiver], subject=subj, message = _("Please see attachment"), - attachments=[frappe.attach_print(self.doctype, self.name, file_name=self.name)], - bulk=True, reference_doctype= self.doctype, reference_name= self.name) + attachments=[frappe.attach_print(self.doctype, self.name, file_name=self.name)], reference_doctype= self.doctype, reference_name= self.name) else: msgprint(_("{0}: Employee email not found, hence email not sent").format(self.employee_name)) diff --git a/erpnext/hr/doctype/salary_slip/test_salary_slip.py b/erpnext/hr/doctype/salary_slip/test_salary_slip.py index 106b8a205b..4ddaecc80e 100644 --- a/erpnext/hr/doctype/salary_slip/test_salary_slip.py +++ b/erpnext/hr/doctype/salary_slip/test_salary_slip.py @@ -96,19 +96,19 @@ class TestSalarySlip(unittest.TestCase): frappe.set_user("test_employee@example.com") self.assertTrue(salary_slip_test_employee.has_permission("read")) - + def test_email_salary_slip(self): - frappe.db.sql("delete from `tabBulk Email`") + frappe.db.sql("delete from `tabEmail Queue`") hr_settings = frappe.get_doc("HR Settings", "HR Settings") hr_settings.email_salary_slip_to_employee = 1 hr_settings.save() - + self.make_employee("test_employee@example.com") self.make_employee_salary_slip("test_employee@example.com") - bulk_mails = frappe.db.sql("""select name from `tabBulk Email`""") - self.assertTrue(bulk_mails) - + email_queue = frappe.db.sql("""select name from `tabEmail Queue`""") + self.assertTrue(email_queue) + def make_employee(self, user): if not frappe.db.get_value("User", user): diff --git a/erpnext/projects/doctype/project/project.py b/erpnext/projects/doctype/project/project.py index e7f5b7ad5d..65b19b0eee 100644 --- a/erpnext/projects/doctype/project/project.py +++ b/erpnext/projects/doctype/project/project.py @@ -144,7 +144,7 @@ class Project(Document): for user in self.users: if user.welcome_email_sent==0: - frappe.sendmail(user.user, subject=_("Project Collaboration Invitation"), content=content.format(*messages), bulk=True) + frappe.sendmail(user.user, subject=_("Project Collaboration Invitation"), content=content.format(*messages)) user.welcome_email_sent=1 diff --git a/erpnext/setup/doctype/email_digest/email_digest.py b/erpnext/setup/doctype/email_digest/email_digest.py index 2053fc003b..4f70cd8314 100644 --- a/erpnext/setup/doctype/email_digest/email_digest.py +++ b/erpnext/setup/doctype/email_digest/email_digest.py @@ -60,7 +60,6 @@ class EmailDigest(Document): recipients=user_id, subject="{frequency} Digest".format(frequency=self.frequency), message=msg_for_this_receipient, - bulk=True, reference_doctype = self.doctype, reference_name = self.name, unsubscribe_message = _("Unsubscribe from this Email Digest"))