fix(chapter): index recalculation on deletion

This commit is contained in:
raizasafeel
2026-01-21 14:37:10 +05:30
parent 355c752ec1
commit 297ffa5171

View File

@@ -1063,11 +1063,24 @@ def delete_chapter(chapter):
if chapterInfo.is_scorm_package:
delete_scorm_package(chapterInfo.scorm_package_path)
course = frappe.db.get_value("Chapter Reference", {"chapter": chapter}, "parent")
frappe.db.delete("Chapter Reference", {"chapter": chapter})
frappe.db.delete("Lesson Reference", {"parent": chapter})
frappe.db.delete("Course Lesson", {"chapter": chapter})
frappe.db.delete("Course Chapter", chapter)
# reset chapter reference index after deletion
if course:
chapters = frappe.get_all(
"Chapter Reference", filters={"parent": course}, fields=["name"], order_by="idx asc"
)
i = 1
for chapter in chapters:
frappe.db.set_value("Chapter Reference", chapter.name, "idx", i)
i += 1
def delete_scorm_package(scorm_package_path):
scorm_package_path = frappe.get_site_path("public", scorm_package_path[1:])