Migration Copy Scripts
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
from django.contrib import messages
|
||||
from django.views.generic import (TemplateView, ListView, DetailView, CreateView, UpdateView)
|
||||
|
||||
|
||||
class BaseContextMixin:
|
||||
title = "Bus Portal"
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context = super().get_context_data(**kwargs)
|
||||
user = self.request.user
|
||||
|
||||
context["theme"] = getattr(user, "theme", "theme-light")
|
||||
|
||||
nav_links = [
|
||||
{"name": "Dashboard", "url": "/"},
|
||||
{"name": "ORBAT", "url": "/orbat/"},
|
||||
{"name": "Events", "url": "/events/"},
|
||||
{"name": "Training", "url": "/training/"},
|
||||
]
|
||||
|
||||
context["nav_links"] = nav_links
|
||||
context.setdefault("breadcrumbs", [])
|
||||
context["title"] = getattr(self, "title", "Bus Portal")
|
||||
|
||||
return context
|
||||
|
||||
def add_message(self, message, level=messages.INFO):
|
||||
"""
|
||||
Helper to add a message prompt to the user.
|
||||
Can be called from any view inheriting this base.
|
||||
"""
|
||||
messages.add_message(self.request, level, message)
|
||||
|
||||
class BaseTemplateView(BaseContextMixin, TemplateView):
|
||||
pass
|
||||
|
||||
class BaseListView(BaseContextMixin, ListView):
|
||||
pass
|
||||
|
||||
class BaseDetailView(BaseContextMixin, DetailView):
|
||||
pass
|
||||
|
||||
class BaseCreateView(BaseContextMixin, CreateView):
|
||||
pass
|
||||
|
||||
class BaseUpdateView(BaseContextMixin, UpdateView):
|
||||
pass
|
||||
Reference in New Issue
Block a user