From fd141f94245050e11551d41aa660293c466d8b18 Mon Sep 17 00:00:00 2001 From: ankitjavalkarwork Date: Wed, 12 Nov 2014 13:08:52 +0530 Subject: [PATCH] [#2208] System Manager role should always be a System User validation --- frappe/core/doctype/user/user.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/frappe/core/doctype/user/user.py b/frappe/core/doctype/user/user.py index 100385772b..71a244ce4b 100644 --- a/frappe/core/doctype/user/user.py +++ b/frappe/core/doctype/user/user.py @@ -25,6 +25,7 @@ class User(Document): if self.name not in STANDARD_USERS: self.validate_email_type(self.email) self.add_system_manager_role() + self.validate_system_manager_user_type() self.check_enable_disable() self.update_gravatar() self.ensure_unique_roles() @@ -57,6 +58,12 @@ class User(Document): "role": "System Manager" }) + def validate_system_manager_user_type(self): + #if user has system manager role then user type should be system user + if ("System Manager" in [user_role.role for user_role in + self.get("user_roles")]) and self.get("user_type") != "System User": + frappe.throw(_("User with System Manager Role should always have User Type: System User")) + def email_new_password(self, new_password=None): if new_password and not self.in_insert: _update_password(self.name, new_password)