32 lines
1.0 KiB
Python
32 lines
1.0 KiB
Python
from django.views.generic import TemplateView
|
|
from web_project import TemplateLayout
|
|
from web_project.template_helpers.theme import TemplateHelper
|
|
|
|
|
|
"""
|
|
This file is a view controller for multiple pages as a module.
|
|
Here you can override the page view layout.
|
|
Refer to front_pages/urls.py file for more pages.
|
|
"""
|
|
|
|
|
|
class FrontPagesView(TemplateView):
|
|
# Predefined function
|
|
def get_context_data(self, **kwargs):
|
|
# A function to init the global layout. It is defined in web_project/__init__.py file
|
|
context = TemplateLayout.init(self, super().get_context_data(**kwargs))
|
|
|
|
# Update the context
|
|
context.update(
|
|
{
|
|
"layout": "front",
|
|
"layout_path": TemplateHelper.set_layout("layout_front.html", context),
|
|
"active_url": self.request.path, # Get the current url path (active URL) from request
|
|
}
|
|
)
|
|
|
|
# map_context according to updated context values
|
|
TemplateHelper.map_context(context)
|
|
|
|
return context
|