From 6f73be9a0b63ba14dfe4d5abac77375214718548 Mon Sep 17 00:00:00 2001 From: Jannat Patel Date: Fri, 6 Dec 2024 13:20:14 +0530 Subject: [PATCH] fix: handle html files during scorm page render --- lms/hooks.py | 2 -- lms/lms/api.py | 11 ----------- lms/page_renderers.py | 5 +++++ 3 files changed, 5 insertions(+), 13 deletions(-) diff --git a/lms/hooks.py b/lms/hooks.py index b77b8d0fb..b00d4b93d 100644 --- a/lms/hooks.py +++ b/lms/hooks.py @@ -220,8 +220,6 @@ "PDF": "lms.plugins.pdf_renderer", } -website_path_resolver = "lms.lms.api.resolve_scorm_path" - # page_renderer to manage profile pages page_renderer = [ "lms.page_renderers.ProfileRedirectPage", diff --git a/lms/lms/api.py b/lms/lms/api.py index 37f7d4528..908a1dc07 100644 --- a/lms/lms/api.py +++ b/lms/lms/api.py @@ -17,7 +17,6 @@ from typing import Optional from lms.lms.utils import get_average_rating, get_lesson_count from xml.dom.minidom import parseString -from frappe.website.path_resolver import resolve_path as original_resolve_path @frappe.whitelist() @@ -1030,13 +1029,3 @@ def delete_scorm_package(scorm_package_path): scorm_package_path = frappe.get_site_path("public", scorm_package_path[1:]) if os.path.exists(scorm_package_path): shutil.rmtree(scorm_package_path) - - -def resolve_scorm_path(path): - try: - if "scorm/" in path and path.endswith(".html"): - return path - except Exception: - pass - - return original_resolve_path(path) diff --git a/lms/page_renderers.py b/lms/page_renderers.py index 32168e3ad..9b9ee96d4 100644 --- a/lms/page_renderers.py +++ b/lms/page_renderers.py @@ -149,6 +149,11 @@ def can_render(self): def render(self): path = os.path.join(frappe.local.site_path, "public", self.path.lstrip("/")) + + extension = os.path.splitext(path)[1] + if not extension: + path = f"{path}.html" + f = open(path, "rb") response = Response( wrap_file(frappe.local.request.environ, f), direct_passthrough=True