This commit is contained in:
retoor 2025-01-24 23:42:24 +01:00
parent b56371994f
commit dae877113c

View File

@ -1,9 +1,10 @@
from app.app import Application as BaseApplication
import pathlib
from aiohttp import web
from app.app import Application as BaseApplication
from snek.system.markdown import MarkdownExtension
from snek.system.markdown import render_markdown
class Application(BaseApplication):
@ -17,17 +18,26 @@ class Application(BaseApplication):
self.router.add_get("/{tail:.*}", self.handle_document)
async def handle_document(self, request):
relative_path = request.match_info['tail'].strip("/")
if relative_path == '':
relative_path = 'index.html'
relative_path = request.match_info["tail"].strip("/")
if relative_path == "":
relative_path = "index.html"
document_path = self.path.joinpath(relative_path)
if not document_path.exists():
return web.Response(status=404,body=b'Resource is not found on this server.',content_type="text/plain")
return web.Response(
status=404,
body=b"Resource is not found on this server.",
content_type="text/plain",
)
if document_path.is_dir():
document_path = document_path.joinpath("index.html")
if not document_path.exists():
return web.Response(status=404,body=b'Resource is not found on this server.',content_type="text/plain")
return web.Response(
status=404,
body=b"Resource is not found on this server.",
content_type="text/plain",
)
response = await self.render_template(str(document_path.relative_to(self.path)),request)
response = await self.render_template(
str(document_path.relative_to(self.path)), request
)
return response