roosterwijs/backend/core/apps.py

42 lines
1.8 KiB
Python

from django.apps import AppConfig
class CoreConfig(AppConfig):
default_auto_field = "django.db.models.BigAutoField"
name = "core"
verbose_name = "Kern (roostering)"
def ready(self):
"""Meld de kern aan bij het plugin-register.
De kern is altijd actief (core=True) en levert de vaste navigatie:
rooster, personen en groepen. In latere fases vullen we deze schermen.
"""
from plugins.registry import MenuItem, ModuleSpec, registry
registry.register(
ModuleSpec(
key="core",
name="Roosterkern",
description=(
"Het hart van het systeem: personen, groepen, subgroepen, "
"activiteiten, locaties, tijdslots, roosterblokken, "
"schooljaarkalender en conflictdetectie."
),
version="0.1.0",
category="Kern",
core=True,
menu_items=(
MenuItem("Rooster", "/rooster", icon="calendar", order=10),
MenuItem("Personen", "/personen", icon="users", order=20),
MenuItem("Functies", "/functies", icon="badge", order=25),
MenuItem("Groepen", "/groepen", icon="layers", order=30),
MenuItem("Subgroepen", "/subgroepen", icon="layers", order=40),
MenuItem("Activiteiten", "/activiteiten", icon="book", order=50),
MenuItem("Locaties", "/locaties", icon="pin", order=55),
MenuItem("Tijdsloten", "/tijdsloten", icon="clock", order=60),
MenuItem("Schooljaar", "/schooljaar", icon="calendar", order=70),
MenuItem("Afwezigheid", "/afwezigheid", icon="away", order=80),
),
)
)