""" URL configuration for kholles_web project. The `urlpatterns` list routes URLs to views. For more information please see: https://docs.djangoproject.com/en/5.0/topics/http/urls/ Examples: Function views 1. Add an import: from my_app import views 2. Add a URL to urlpatterns: path('', views.home, name='home') Class-based views 1. Add an import: from other_app.views import Home 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') Including another URLconf 1. Import the include() function: from django.urls import include, path 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.contrib import admin, auth from django.urls import include, path from django.shortcuts import redirect from django.contrib.staticfiles import views as vstatic from rest_framework import routers from rest_framework_simplejwt.views import ( TokenObtainPairView, TokenRefreshView, ) from drf_spectacular.views import SpectacularAPIView, SpectacularRedocView, SpectacularSwaggerView from colloscope.views import home_redirect from colloscope.viewsets import * router = routers.SimpleRouter() router.register('school', SchoolViewset, basename='school') router.register('class', ClassViewset, basename='class') router.register('term', TermViewset, basename='term') router.register("subject", SubjectViewset, basename='subject') router.register('grouptype', GroupTypeViewset, basename='grouptype') router.register("group", GroupViewset, basename='group') router.register("student", StudentViewset, basename='student') router.register("colleur", ColleurViewset, basename='colleur') router.register("slot", SlotViewset, basename='slot') router.register("colle", ColleViewset, basename='colle') router.register("calendarlink", CalendarLinkViewset, basename='calendarlink') urlpatterns = [ path('', home_redirect, name="home"), path('api-auth/', include('rest_framework.urls')), path('api/token/', TokenObtainPairView.as_view(), name='token_obtain_pair'), path('api/token/refresh/', TokenRefreshView.as_view(), name='token_refresh'), path('api/schema/', SpectacularAPIView.as_view(), name='schema'), path('api/documentation/', SpectacularSwaggerView.as_view(url_name='schema'), name='api-doc'), path("api/", lambda request: redirect("api-doc")), path("api/doc/", lambda request: redirect("api-doc")), path("api/", include(router.urls)), path("oauth2/", include('oauth2_provider.urls', namespace='oauth2_provider')), path("favicon.ico", lambda req: vstatic.serve(req, "favicon.ico")), path('colloscope/', include('colloscope.urls')), path('admin/', admin.site.urls), path('accounts/', include("django.contrib.auth.urls")), ]