From 337a9f6e99889e84e10cdb0028e94e41b7c9ebd7 Mon Sep 17 00:00:00 2001 From: "Nihantra C. Patel" <141945075+Nihantra-Patel@users.noreply.github.com> Date: Thu, 7 Nov 2024 15:34:32 +0530 Subject: [PATCH] fix: newsletter scheduling mail (#28397) * fix: Newsletter scheduling * fix: Newsletter scheduling --- frappe/email/doctype/newsletter/newsletter.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/frappe/email/doctype/newsletter/newsletter.py b/frappe/email/doctype/newsletter/newsletter.py index 6653d43054..4f061d75af 100644 --- a/frappe/email/doctype/newsletter/newsletter.py +++ b/frappe/email/doctype/newsletter/newsletter.py @@ -147,6 +147,9 @@ class Newsletter(WebsiteGenerator): frappe.throw(_("Newsletter must be published to send webview link in email")) def validate_scheduling_date(self): + if getattr(frappe.flags, "is_scheduler_running", False): + return + if ( self.schedule_sending and frappe.utils.get_datetime(self.schedule_send) < frappe.utils.now_datetime() @@ -394,6 +397,8 @@ def get_list_context(context=None): def send_scheduled_email(): """Send scheduled newsletter to the recipients.""" + frappe.flags.is_scheduler_running = True + scheduled_newsletter = frappe.get_all( "Newsletter", filters={ @@ -420,6 +425,8 @@ def send_scheduled_email(): if not frappe.flags.in_test: frappe.db.commit() + frappe.flags.is_scheduler_running = False + @frappe.whitelist(allow_guest=True) def newsletter_email_read(recipient_email=None, reference_doctype=None, reference_name=None):