Merge pull request #295 from anandology/context-in-page-extensions
This commit is contained in:
@@ -24,6 +24,11 @@ class PageExtension:
|
|||||||
`render_footer()` methods to inject whatever styles/scripts into
|
`render_footer()` methods to inject whatever styles/scripts into
|
||||||
the webpage.
|
the webpage.
|
||||||
"""
|
"""
|
||||||
|
def __init__(self):
|
||||||
|
self.context = frappe._dict()
|
||||||
|
|
||||||
|
def set_context(self, context):
|
||||||
|
self.context = context
|
||||||
|
|
||||||
def render_header(self):
|
def render_header(self):
|
||||||
"""Returns the HTML snippet to be included in the head section
|
"""Returns the HTML snippet to be included in the head section
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ def get_context(context):
|
|||||||
"description": meta_info
|
"description": meta_info
|
||||||
}
|
}
|
||||||
|
|
||||||
context.page_extensions = get_page_extensions()
|
context.page_extensions = get_page_extensions(context)
|
||||||
context.page_context = {
|
context.page_context = {
|
||||||
"course": context.course.name,
|
"course": context.course.name,
|
||||||
"batch": context.get("batch") and context.batch.name,
|
"batch": context.get("batch") and context.batch.name,
|
||||||
@@ -52,8 +52,10 @@ def get_lesson_index(course, batch, user):
|
|||||||
lesson = batch.get_current_lesson(user)
|
lesson = batch.get_current_lesson(user)
|
||||||
return lesson and course.get_lesson_index(lesson)
|
return lesson and course.get_lesson_index(lesson)
|
||||||
|
|
||||||
def get_page_extensions():
|
def get_page_extensions(context):
|
||||||
default_value = ["school.plugins.PageExtension"]
|
default_value = ["school.plugins.PageExtension"]
|
||||||
classnames = frappe.get_hooks("school_lesson_page_extensions") or default_value
|
classnames = frappe.get_hooks("school_lesson_page_extensions") or default_value
|
||||||
extensions = [frappe.get_attr(name)() for name in classnames]
|
extensions = [frappe.get_attr(name)() for name in classnames]
|
||||||
|
for e in extensions:
|
||||||
|
e.set_context(context)
|
||||||
return extensions
|
return extensions
|
||||||
|
|||||||
Reference in New Issue
Block a user