diff --git a/frappe/website/page_controllers/document_page.py b/frappe/website/page_controllers/document_page.py index 6ab384e77d..1a42b5debb 100644 --- a/frappe/website/page_controllers/document_page.py +++ b/frappe/website/page_controllers/document_page.py @@ -7,7 +7,7 @@ from frappe.website.router import (get_doctypes_with_web_view, class DocumentPage(BaseTemplatePage): - def validate(self): + def can_render(self): ''' Find a document with matching `route` from all doctypes with `has_web_view`=1 ''' diff --git a/frappe/website/page_controllers/error_page.py b/frappe/website/page_controllers/error_page.py index 554949684f..52903d076b 100644 --- a/frappe/website/page_controllers/error_page.py +++ b/frappe/website/page_controllers/error_page.py @@ -6,5 +6,5 @@ class ErrorPage(TemplatePage): super().__init__(path=path, http_status_code=http_status_code) self.http_status_code = getattr(exception, 'http_status_code', None) or http_status_code or 500 - def validate(self): + def can_render(self): return True diff --git a/frappe/website/page_controllers/list_page.py b/frappe/website/page_controllers/list_page.py index cc6f150dd2..e3b92a2771 100644 --- a/frappe/website/page_controllers/list_page.py +++ b/frappe/website/page_controllers/list_page.py @@ -2,7 +2,7 @@ import frappe from frappe.website.page_controllers.template_page import TemplatePage class ListPage(TemplatePage): - def validate(self): + def can_render(self): return frappe.db.exists('DocType', self.path, True) def render(self): diff --git a/frappe/website/page_controllers/not_found_page.py b/frappe/website/page_controllers/not_found_page.py index 13c6358512..1f687ddb98 100644 --- a/frappe/website/page_controllers/not_found_page.py +++ b/frappe/website/page_controllers/not_found_page.py @@ -15,7 +15,7 @@ class NotFoundPage(TemplatePage): http_status_code = 404 super().__init__(path=path, http_status_code=http_status_code) - def validate(self): + def can_render(self): return True def render(self): diff --git a/frappe/website/page_controllers/not_permitted_page.py b/frappe/website/page_controllers/not_permitted_page.py index 3ed732d80b..75a8b756d8 100644 --- a/frappe/website/page_controllers/not_permitted_page.py +++ b/frappe/website/page_controllers/not_permitted_page.py @@ -9,7 +9,7 @@ class NotPermittedPage(TemplatePage): super().__init__(path=path, http_status_code=http_status_code) self.http_status_code = 403 - def validate(self): + def can_render(self): return True def render(self): diff --git a/frappe/website/page_controllers/print_page.py b/frappe/website/page_controllers/print_page.py index 574f335f5d..790ee75585 100644 --- a/frappe/website/page_controllers/print_page.py +++ b/frappe/website/page_controllers/print_page.py @@ -6,7 +6,7 @@ class PrintPage(TemplatePage): default path returns a printable object (based on permission) /Quotation/Q-0001 ''' - def validate(self): + def can_render(self): parts = self.path.split('/', 1) if len(parts)==2: if (frappe.db.exists('DocType', parts[0], True) diff --git a/frappe/website/page_controllers/redirect_page.py b/frappe/website/page_controllers/redirect_page.py index f3a0ba6e7f..0bfa8897a3 100644 --- a/frappe/website/page_controllers/redirect_page.py +++ b/frappe/website/page_controllers/redirect_page.py @@ -6,7 +6,7 @@ class RedirectPage(object): self.path = path self.http_status_code = http_status_code - def validate(self): + def can_render(self): return True def render(self): diff --git a/frappe/website/page_controllers/static_page.py b/frappe/website/page_controllers/static_page.py index b292a62922..0c75d6feb3 100644 --- a/frappe/website/page_controllers/static_page.py +++ b/frappe/website/page_controllers/static_page.py @@ -23,7 +23,7 @@ class StaticPage(WebPage): if os.path.isfile(file_path): self.file_path = file_path - def validate(self): + def can_render(self): return self.is_valid_file_path() and self.file_path def is_valid_file_path(self): diff --git a/frappe/website/page_controllers/template_page.py b/frappe/website/page_controllers/template_page.py index cd30fa02c8..c9797b88c9 100644 --- a/frappe/website/page_controllers/template_page.py +++ b/frappe/website/page_controllers/template_page.py @@ -36,7 +36,7 @@ class TemplatePage(BaseTemplatePage): self.basepath = os.path.dirname(file_path) return - def validate(self): + def can_render(self): return hasattr(self, 'template_path') and bool(self.template_path) def get_index_path_options(self, search_path): diff --git a/frappe/website/page_controllers/web_form.py b/frappe/website/page_controllers/web_form.py index d7ab02d880..c1afaafbe5 100644 --- a/frappe/website/page_controllers/web_form.py +++ b/frappe/website/page_controllers/web_form.py @@ -2,5 +2,5 @@ from frappe.website.page_controllers.web_page import WebPage import frappe class WebFormPage(WebPage): - def validate(self): + def can_render(self): return bool(frappe.get_all("Web Form", filters={'route': self.path})) diff --git a/frappe/website/page_controllers/web_page.py b/frappe/website/page_controllers/web_page.py index 4d9e642b4b..0407afe532 100644 --- a/frappe/website/page_controllers/web_page.py +++ b/frappe/website/page_controllers/web_page.py @@ -13,7 +13,7 @@ class WebPage(object): if self.validate(): return self.render() - def validate(self): + def can_render(self): pass def render(self): diff --git a/frappe/website/path_resolver.py b/frappe/website/path_resolver.py index 39edf0d9a8..854948740c 100644 --- a/frappe/website/path_resolver.py +++ b/frappe/website/path_resolver.py @@ -32,15 +32,14 @@ class PathResolver(): try: resolve_redirect(self.path, request.query_string) except frappe.Redirect: - return self.path, RedirectPage(self.path) + return frappe.flags.redirect_location, RedirectPage(self.path) endpoint = resolve_path(self.path) renderers = (StaticPage, WebFormPage, TemplatePage, ListPage, DocumentPage, PrintPage, NotFoundPage) for renderer in renderers: renderer_instance = renderer(endpoint, 200) - can_render = renderer_instance.validate() - if can_render: + if renderer_instance.can_render(): return endpoint, renderer_instance return endpoint, NotFoundPage(endpoint)