[fix] ignore permissions when removing user share
This commit is contained in:
parent
fc5155c2fb
commit
b6d525270e
3 changed files with 7 additions and 5 deletions
|
|
@ -105,7 +105,7 @@ class User(Document):
|
|||
flags={"ignore_share_permission": True})
|
||||
else:
|
||||
frappe.share.remove(self.doctype, self.name, self.name,
|
||||
flags={"ignore_share_permission": True})
|
||||
flags={"ignore_permissions": True})
|
||||
|
||||
def validate_share(self, docshare):
|
||||
if docshare.user == self.name:
|
||||
|
|
@ -321,8 +321,10 @@ class User(Document):
|
|||
self.username = self.username.strip(" @")
|
||||
|
||||
if self.username_exists():
|
||||
frappe.msgprint(_("Username {0} already exists").format(self.username))
|
||||
self.suggest_username()
|
||||
if self.user_type == 'System User':
|
||||
frappe.msgprint(_("Username {0} already exists").format(self.username))
|
||||
self.suggest_username()
|
||||
|
||||
self.username = ""
|
||||
|
||||
# should be made up of characters, numbers and underscore only
|
||||
|
|
|
|||
|
|
@ -138,7 +138,7 @@ def delete_from_table(doctype, name, ignore_doctypes, doc):
|
|||
|
||||
def check_permission_and_not_submitted(doc):
|
||||
# permission
|
||||
if frappe.session.user!="Administrator" and not doc.has_permission("delete"):
|
||||
if not doc.flags.ignore_permissions and frappe.session.user!="Administrator" and not doc.has_permission("delete"):
|
||||
frappe.msgprint(_("User not allowed to delete {0}: {1}").format(doc.doctype, doc.name), raise_exception=True)
|
||||
|
||||
# check if submitted
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ def remove(doctype, name, user, flags=None):
|
|||
"share_doctype": doctype})
|
||||
|
||||
if share_name:
|
||||
frappe.delete_doc("DocShare", share_name)
|
||||
frappe.delete_doc("DocShare", share_name, flags=flags)
|
||||
|
||||
@frappe.whitelist()
|
||||
def set_permission(doctype, name, user, permission_to, value=1, everyone=0):
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue