refactor: make use of check_permission parameter for get_lazy_doc
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
This commit is contained in:
parent
75b91f44ce
commit
2dcfe07ca8
7 changed files with 12 additions and 24 deletions
|
|
@ -365,8 +365,7 @@ def attach_file(
|
|||
:param is_private: Attach file as private file (1 or 0)
|
||||
:param docfield: file to attach to (optional)"""
|
||||
|
||||
doc = frappe.get_lazy_doc(doctype, docname)
|
||||
doc.check_permission()
|
||||
doc = frappe.get_lazy_doc(doctype, docname, check_permission=True)
|
||||
|
||||
file = frappe.get_doc(
|
||||
{
|
||||
|
|
|
|||
|
|
@ -94,8 +94,7 @@ def get_docinfo(doc=None, doctype=None, name=None):
|
|||
from frappe.share import _get_users as get_docshares
|
||||
|
||||
if not doc:
|
||||
doc = frappe.get_lazy_doc(doctype, name)
|
||||
doc.check_permission("read")
|
||||
doc = frappe.get_lazy_doc(doctype, name, check_permission=True)
|
||||
|
||||
all_communications = _get_communications(doc.doctype, doc.name, limit=21)
|
||||
automated_messages = [
|
||||
|
|
@ -204,8 +203,7 @@ def get_versions(doc: "Document") -> list[dict]:
|
|||
def get_communications(doctype, name, start=0, limit=20):
|
||||
from frappe.utils import cint
|
||||
|
||||
doc = frappe.get_lazy_doc(doctype, name)
|
||||
doc.check_permission("read")
|
||||
frappe.get_lazy_doc(doctype, name).check_permission()
|
||||
|
||||
return _get_communications(doctype, name, cint(start), cint(limit))
|
||||
|
||||
|
|
|
|||
|
|
@ -27,8 +27,7 @@ def add_comment(
|
|||
reference_doctype: str, reference_name: str, content: str, comment_email: str, comment_by: str
|
||||
) -> "Comment":
|
||||
"""Allow logged user with permission to read document to add a comment"""
|
||||
reference_doc = frappe.get_lazy_doc(reference_doctype, reference_name)
|
||||
reference_doc.check_permission()
|
||||
reference_doc = frappe.get_lazy_doc(reference_doctype, reference_name, check_permission=True)
|
||||
|
||||
comment = frappe.new_doc("Comment")
|
||||
comment.update(
|
||||
|
|
@ -58,8 +57,7 @@ def update_comment(name, content):
|
|||
frappe.throw(_("Comment can only be edited by the owner"), frappe.PermissionError)
|
||||
|
||||
if doc.reference_doctype and doc.reference_name:
|
||||
reference_doc = frappe.get_lazy_doc(doc.reference_doctype, doc.reference_name)
|
||||
reference_doc.check_permission()
|
||||
reference_doc = frappe.get_lazy_doc(doc.reference_doctype, doc.reference_name, check_permission=True)
|
||||
|
||||
doc.content = extract_images_from_html(reference_doc, content, is_private=True)
|
||||
else:
|
||||
|
|
|
|||
|
|
@ -264,8 +264,7 @@ def get_open_count(doctype: str, name: str, items=None):
|
|||
|
||||
|
||||
def _get_linked_document_counts(doctype: str, name: str, items=None):
|
||||
doc = frappe.get_lazy_doc(doctype, name)
|
||||
doc.check_permission()
|
||||
doc = frappe.get_lazy_doc(doctype, name, check_permission=True)
|
||||
meta = doc.meta
|
||||
links = meta.get_dashboard_data()
|
||||
|
||||
|
|
|
|||
|
|
@ -211,15 +211,13 @@ def check_write_permission(doctype: str | None = None, name: str | None = None):
|
|||
return
|
||||
|
||||
try:
|
||||
doc = frappe.get_lazy_doc(doctype, name)
|
||||
frappe.get_lazy_doc(doctype, name, check_permission="write")
|
||||
except frappe.DoesNotExistError:
|
||||
# doc has not been inserted yet, name is set to "new-some-doctype"
|
||||
# If doc inserts fine then only this attachment will be linked see file/utils.py:relink_mismatched_files
|
||||
frappe.new_doc(doctype).check_permission("write")
|
||||
return
|
||||
|
||||
doc.check_permission("write")
|
||||
|
||||
|
||||
@frappe.whitelist(allow_guest=True)
|
||||
def download_file(file_url: str):
|
||||
|
|
|
|||
|
|
@ -147,7 +147,7 @@ def get_lazy_doc(
|
|||
) -> "Document":
|
||||
if doctype == "DocType":
|
||||
warnings.warn("DocType doesn't support lazy loading", stacklevel=1)
|
||||
return get_doc(doctype, name)
|
||||
return get_doc(doctype, name, check_permission=check_permission)
|
||||
|
||||
if controller := get_lazy_controller(doctype):
|
||||
doc = controller(doctype, name, for_update=for_update)
|
||||
|
|
|
|||
|
|
@ -340,11 +340,9 @@ def get_html_and_style(
|
|||
"""Return `html` and `style` of print format, used in PDF etc."""
|
||||
|
||||
if isinstance(name, str):
|
||||
document = frappe.get_lazy_doc(doc, name)
|
||||
document = frappe.get_lazy_doc(doc, name, check_permission=True)
|
||||
else:
|
||||
document = frappe.get_doc(json.loads(doc))
|
||||
|
||||
document.check_permission()
|
||||
document = frappe.get_doc(json.loads(doc), check_permission=True)
|
||||
|
||||
print_format = get_print_format_doc(print_format, meta=document.meta)
|
||||
set_link_titles(document)
|
||||
|
|
@ -371,11 +369,9 @@ def get_rendered_raw_commands(doc: str, name: str | None = None, print_format: s
|
|||
"""Return Rendered Raw Commands of print format, used to send directly to printer."""
|
||||
|
||||
if isinstance(name, str):
|
||||
document = frappe.get_lazy_doc(doc, name)
|
||||
document = frappe.get_lazy_doc(doc, name, check_permission=True)
|
||||
else:
|
||||
document = frappe.get_doc(json.loads(doc))
|
||||
|
||||
document.check_permission()
|
||||
document = frappe.get_doc(json.loads(doc), check_permission=True)
|
||||
|
||||
print_format = get_print_format_doc(print_format, meta=document.meta)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue