Translate the whole site to English: English routes with 301 redirects from the Dutch paths, English UI, docs, seeds and captions, one-time live content migration

This commit is contained in:
2026-10-05 11:25:41 +02:00
parent bbdecdc95b
commit ff547e1677
153 changed files with 1095 additions and 774 deletions
+3 -3
View File
@@ -3,7 +3,7 @@ from fastapi import APIRouter, Request
from fastapi.responses import RedirectResponse
from molodetz.constants import TOPICS
from molodetz.database import get_post_by_slug, get_user
from molodetz.database import get_post_by_slug, get_post_by_slug_tail, get_user
from molodetz.rendering import content_preview, plain_title
from molodetz.responses import respond
from molodetz.schemas.posts import PostDetailOut
@@ -15,10 +15,10 @@ router = APIRouter()
@router.get("/{slug}")
async def post_detail(request: Request, slug: str):
post = get_post_by_slug(slug)
post = get_post_by_slug(slug) or get_post_by_slug_tail(slug)
viewer = get_current_user(request)
if post is None or (post["status"] != "published" and not is_admin(viewer)):
not_found("Bericht niet gevonden")
not_found("Post not found")
if slug != post["slug"]:
return RedirectResponse(f"/posts/{post['slug']}", status_code=301)
author = get_user(post["user_uid"])