website/hub/urls.py

62 lines
1.9 KiB
Python
Raw Normal View History

2025-01-27 15:07:38 +01:00
from django.conf import settings
2025-02-28 17:19:03 +01:00
from django.conf.urls import handler400, handler404, handler500
2025-01-27 15:07:38 +01:00
from django.conf.urls.static import static
2025-01-27 14:58:23 +01:00
from django.contrib import admin
2025-02-28 17:19:03 +01:00
from django.shortcuts import render
2025-01-27 14:58:23 +01:00
from django.urls import path, include
2025-03-03 15:57:08 +01:00
from django.contrib.sitemaps.views import sitemap
from django.http import HttpResponse
2025-01-27 14:58:23 +01:00
2025-02-28 17:19:03 +01:00
from hub.services.views.errors import bad_request, page_not_found, server_error
2025-03-03 15:57:08 +01:00
from .sitemaps import (
StaticSitemap,
ServiceSitemap,
OfferingSitemap,
CloudProviderSitemap,
ConsultingPartnerSitemap,
)
def robots_txt(request):
content = """User-agent: *
Allow: /
Sitemap: https://serva.la/sitemap.xml
"""
return HttpResponse(content, content_type="text/plain")
2025-02-28 17:19:03 +01:00
handler400 = "hub.services.views.errors.bad_request"
handler404 = "hub.services.views.errors.page_not_found"
handler500 = "hub.services.views.errors.server_error"
2025-03-03 15:57:08 +01:00
sitemaps = {
"static": StaticSitemap,
"services": ServiceSitemap,
"offerings": OfferingSitemap,
"providers": CloudProviderSitemap,
"partners": ConsultingPartnerSitemap,
}
2025-01-27 14:58:23 +01:00
urlpatterns = [
path("admin/", admin.site.urls),
2025-01-30 11:23:25 +01:00
path("", include("hub.services.urls")),
2025-01-31 15:34:10 +01:00
path("broker/", include("hub.broker.urls", namespace="broker")),
2025-03-03 16:05:14 +01:00
path(
"sitemap.xml",
sitemap,
{"sitemaps": sitemaps},
name="django.contrib.sitemaps.views.sitemap",
),
path("robots.txt", robots_txt, name="robots_txt"),
2025-01-27 14:58:23 +01:00
]
2025-01-27 15:07:38 +01:00
if settings.DEBUG:
urlpatterns += [
path("__reload__/", include("django_browser_reload.urls")),
2025-01-28 13:55:43 +01:00
path("schema-viewer/", include("schema_viewer.urls")),
2025-02-28 17:19:03 +01:00
path("test-400/", lambda request: render(request, "400.html"), name="test_400"),
path("test-404/", lambda request: render(request, "404.html"), name="test_404"),
path("test-500/", lambda request: render(request, "500.html"), name="test_500"),
2025-01-27 15:07:38 +01:00
]
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)