From d1e331f77f701b641af7d23a5960d36e004c9139 Mon Sep 17 00:00:00 2001 From: Rucha Mahabal Date: Thu, 11 Mar 2021 15:27:22 +0530 Subject: [PATCH] fix(Membership): Generate Invoice for membership webhook only if automation is enabled (#24849) --- erpnext/non_profit/doctype/membership/membership.py | 5 +++-- .../doctype/non_profit_settings/non_profit_settings.py | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/erpnext/non_profit/doctype/membership/membership.py b/erpnext/non_profit/doctype/membership/membership.py index 57f787f07f..191281f4ce 100644 --- a/erpnext/non_profit/doctype/membership/membership.py +++ b/erpnext/non_profit/doctype/membership/membership.py @@ -282,8 +282,9 @@ def trigger_razorpay_subscription(*args, **kwargs): member.flags.ignore_mandatory = True member.save() - automate_payment = frappe.db.get_single_value("Membership Settings", "automate_membership_payment_entries") - membership.generate_invoice(with_payment_entry=automate_payment, save=True) + settings = frappe.get_doc("Non Profit Settings") + if settings.allow_invoicing and settings.automate_membership_invoicing: + membership.generate_invoice(with_payment_entry=settings.automate_membership_payment_entries, save=True) except Exception as e: message = "{0}\n\n{1}\n\n{2}: {3}".format(e, frappe.get_traceback(), __("Payment ID"), payment.id) diff --git a/erpnext/non_profit/doctype/non_profit_settings/non_profit_settings.py b/erpnext/non_profit/doctype/non_profit_settings/non_profit_settings.py index 95765fd536..108554c6a0 100644 --- a/erpnext/non_profit/doctype/non_profit_settings/non_profit_settings.py +++ b/erpnext/non_profit/doctype/non_profit_settings/non_profit_settings.py @@ -9,7 +9,7 @@ from frappe.integrations.utils import get_payment_gateway_controller from frappe.model.document import Document class NonProfitSettings(Document): - def generate_webhook_secret(self, field): + def generate_webhook_secret(self, field="membership_webhook_secret"): key = frappe.generate_hash(length=20) self.set(field, key) self.save()