Sith/sith/urls.py

91 lines
3.4 KiB
Python
Raw Normal View History

#
# Copyright 2023 © AE UTBM
# ae@utbm.fr / ae.info@utbm.fr
#
# This file is part of the website of the UTBM Student Association (AE UTBM),
# https://ae.utbm.fr.
#
# You can find the source code of the website at https://github.com/ae-utbm/sith
#
# LICENSED UNDER THE GNU GENERAL PUBLIC LICENSE VERSION 3 (GPLv3)
2024-09-23 08:25:27 +00:00
# SEE : https://raw.githubusercontent.com/ae-utbm/sith/master/LICENSE
# OR WITHIN THE LOCAL FILE "LICENSE"
#
#
2024-06-24 11:07:36 +00:00
from ajax_select import urls as ajax_select_urls
2016-01-28 15:53:37 +00:00
from django.conf import settings
from django.conf.urls.static import static
2024-06-24 11:07:36 +00:00
from django.contrib import admin
from django.urls import include, path
from django.views.i18n import JavaScriptCatalog
2024-07-18 18:23:30 +00:00
from ninja_extra import NinjaExtraAPI
2018-10-04 19:29:19 +00:00
js_info_dict = {"packages": ("sith",)}
2016-09-08 01:29:49 +00:00
handler403 = "core.views.forbidden"
handler404 = "core.views.not_found"
handler500 = "core.views.internal_servor_error"
2024-07-18 18:23:30 +00:00
api = NinjaExtraAPI(version="0.2.0", urls_namespace="api")
api.auto_discover_controllers()
2015-11-18 08:44:06 +00:00
urlpatterns = [
path("", include(("core.urls", "core"), namespace="core")),
2024-07-18 18:23:30 +00:00
path("api/", api.urls),
path("rootplace/", include(("rootplace.urls", "rootplace"), namespace="rootplace")),
path(
"subscription/",
include(("subscription.urls", "subscription"), namespace="subscription"),
2018-10-04 19:29:19 +00:00
),
path("com/", include(("com.urls", "com"), namespace="com")),
path("club/", include(("club.urls", "club"), namespace="club")),
path("counter/", include(("counter.urls", "counter"), namespace="counter")),
path("stock/", include(("stock.urls", "stock"), namespace="stock")),
path(
"accounting/",
include(("accounting.urls", "accounting"), namespace="accounting"),
2018-10-04 19:29:19 +00:00
),
path("eboutic/", include(("eboutic.urls", "eboutic"), namespace="eboutic")),
path(
"launderette/",
include(("launderette.urls", "launderette"), namespace="launderette"),
2018-10-04 19:29:19 +00:00
),
path("sas/", include(("sas.urls", "sas"), namespace="sas")),
path("election/", include(("election.urls", "election"), namespace="election")),
path("forum/", include(("forum.urls", "forum"), namespace="forum")),
path("galaxy/", include(("galaxy.urls", "galaxy"), namespace="galaxy")),
path("trombi/", include(("trombi.urls", "trombi"), namespace="trombi")),
path("matmatronch/", include(("matmat.urls", "matmat"), namespace="matmat")),
path("pedagogy/", include(("pedagogy.urls", "pedagogy"), namespace="pedagogy")),
path("admin/", admin.site.urls),
path("ajax_select/", include(ajax_select_urls)),
path("i18n/", include("django.conf.urls.i18n")),
path("jsi18n/", JavaScriptCatalog.as_view(), name="javascript-catalog"),
path("captcha/", include("captcha.urls")),
2016-09-14 11:46:17 +00:00
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
2017-02-24 00:52:22 +00:00
import debug_toolbar
2018-10-04 19:29:19 +00:00
urlpatterns += [path("__debug__/", include(debug_toolbar.urls))]
2022-08-27 17:48:23 +00:00
2022-08-27 19:22:31 +00:00
"""Sentry debug endpoint
This function always crash and allows us to test
the sentry configuration and the modal popup
displayed to users on production
The error will be displayed on Sentry
inside the "development" environment
NOTE : you need to specify the SENTRY_DSN setting in settings_custom.py
"""
def raise_exception(request):
2022-08-27 19:22:31 +00:00
division_by_zero = 1 / 0
urlpatterns += [path("sentry-debug/", raise_exception)]