diff --git a/frappe/exceptions.py b/frappe/exceptions.py index 6ff53853a0..0f0e212db6 100644 --- a/frappe/exceptions.py +++ b/frappe/exceptions.py @@ -266,8 +266,12 @@ class InvalidRemoteException(Exception): class LinkExpiredError(ValidationError): - pass + http_status_code = 410 + title = "Link Expired" + message = "The link has been expired" class InvalidKey(ValidationError): - pass + http_status_code = 401 + title = "Invalid Key" + message = "The key you are using is invalid" diff --git a/frappe/templates/print_format/print_key_expired.html b/frappe/templates/print_format/print_key_expired.html deleted file mode 100644 index a4fa414d56..0000000000 --- a/frappe/templates/print_format/print_key_expired.html +++ /dev/null @@ -1,6 +0,0 @@ -
- -
- {{ _("Key Expired")}} -
-
\ No newline at end of file diff --git a/frappe/templates/print_format/print_key_invalid.html b/frappe/templates/print_format/print_key_invalid.html deleted file mode 100644 index 4adb165634..0000000000 --- a/frappe/templates/print_format/print_key_invalid.html +++ /dev/null @@ -1,14 +0,0 @@ -
- - - - - - - - - -
- {{ _("Key is Invalid")}} -
-
\ No newline at end of file diff --git a/frappe/utils/print_format.py b/frappe/utils/print_format.py index a99e81a54e..028501f306 100644 --- a/frappe/utils/print_format.py +++ b/frappe/utils/print_format.py @@ -119,18 +119,8 @@ def read_multi_pdf(output): @frappe.whitelist(allow_guest=True) def download_pdf(doctype, name, format=None, doc=None, no_letterhead=0): - doc = frappe.get_doc(doctype, name) - doc.doctype = doctype - try: - validate_print_permission(doc) - except frappe.exceptions.LinkExpiredError: - frappe.local.response.http_status_code = 410 - frappe.local.response.message = _("Link Expired") - return - except frappe.exceptions.InvalidKey: - frappe.local.response.http_status_code = 401 - frappe.local.response.message = _("Invalid Key") - return + doc = doc or frappe.get_doc(doctype, name) + validate_print_permission(doc) html = frappe.get_print(doctype, name, format, doc=doc, no_letterhead=no_letterhead) frappe.local.response.filename = "{name}.pdf".format( diff --git a/frappe/www/printview.py b/frappe/www/printview.py index 4e6cf18883..0f76662ab3 100644 --- a/frappe/www/printview.py +++ b/frappe/www/printview.py @@ -48,25 +48,16 @@ def get_context(context): is_invalid_print = False print_style = None - try: - body = get_rendered_template( - doc, - print_format=print_format, - meta=meta, - trigger_print=frappe.form_dict.trigger_print, - no_letterhead=frappe.form_dict.no_letterhead, - letterhead=letterhead, - settings=settings, - ) - print_style = get_print_style(frappe.form_dict.style, print_format) - except frappe.exceptions.LinkExpiredError: - body = frappe.get_template("templates/print_format/print_key_expired.html").render({}) - context.http_status_code = 410 - is_invalid_print = True - except frappe.exceptions.InvalidKey: - body = frappe.get_template("templates/print_format/print_key_invalid.html").render({}) - context.http_status_code = 401 - is_invalid_print = True + body = get_rendered_template( + doc, + print_format=print_format, + meta=meta, + trigger_print=frappe.form_dict.trigger_print, + no_letterhead=frappe.form_dict.no_letterhead, + letterhead=letterhead, + settings=settings, + ) + print_style = get_print_style(frappe.form_dict.style, print_format) return { "body": body,