From c9aa99537a1015e87ecab54aec55358e8df0fa26 Mon Sep 17 00:00:00 2001 From: Suraj Shetty Date: Wed, 20 Mar 2019 11:32:53 +0530 Subject: [PATCH] fix: Process for energy points only if setting is enabled --- frappe/boot.py | 2 ++ frappe/social/doctype/energy_point_log/energy_point_log.py | 5 ++++- .../doctype/energy_point_settings/energy_point_settings.py | 4 ++++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/frappe/boot.py b/frappe/boot.py index 1e99b6bb30..f68402fdc2 100644 --- a/frappe/boot.py +++ b/frappe/boot.py @@ -17,6 +17,7 @@ from frappe.utils.change_log import get_versions from frappe.translate import get_lang_dict from frappe.email.inbox import get_email_accounts from frappe.core.doctype.feedback_trigger.feedback_trigger import get_enabled_feedback_trigger +from frappe.social.doctype.energy_point_settings.energy_point_settings import is_energy_point_enabled def get_bootinfo(): """build and return boot info""" @@ -78,6 +79,7 @@ def get_bootinfo(): bootinfo.gsuite_enabled = get_gsuite_status() bootinfo.success_action = get_success_action() bootinfo.update(get_email_accounts(user=frappe.session.user)) + bootinfo.energy_points_enabled = is_energy_point_enabled() return bootinfo diff --git a/frappe/social/doctype/energy_point_log/energy_point_log.py b/frappe/social/doctype/energy_point_log/energy_point_log.py index 22f76d9fb8..fbab744fdb 100644 --- a/frappe/social/doctype/energy_point_log/energy_point_log.py +++ b/frappe/social/doctype/energy_point_log/energy_point_log.py @@ -6,6 +6,7 @@ from __future__ import unicode_literals import frappe from frappe.model.document import Document from frappe.utils import cint +from ..energy_point_settings.energy_point_settings import is_energy_point_enabled ENERGY_POINT_VALUES = { 'issue_closed': 2, @@ -22,7 +23,9 @@ class EnergyPointLog(Document): update_user_energy_points(self.points, self.user) def process_for_energy_points(doc, state): - if frappe.flags.in_patch: return + if (not is_energy_point_enabled() + or frappe.flags.in_patch): return + doc_action = doc.get('_action') if not doc_action: return diff --git a/frappe/social/doctype/energy_point_settings/energy_point_settings.py b/frappe/social/doctype/energy_point_settings/energy_point_settings.py index 5ad3727914..5a367304ca 100644 --- a/frappe/social/doctype/energy_point_settings/energy_point_settings.py +++ b/frappe/social/doctype/energy_point_settings/energy_point_settings.py @@ -5,6 +5,10 @@ from __future__ import unicode_literals # import frappe from frappe.model.document import Document +import frappe class EnergyPointSettings(Document): pass + +def is_energy_point_enabled(): + return frappe.get_cached_value('Energy Point Settings', None, 'enabled')