37 lines
1.5 KiB
Python
37 lines
1.5 KiB
Python
"""
|
|
Blueprint: главная страница (GET /).
|
|
|
|
Отдаёт HTML-интерфейс DrHider.
|
|
"""
|
|
|
|
import os
|
|
|
|
from flask import Blueprint, render_template, current_app, send_from_directory
|
|
|
|
# ═══════════════════════════════════════════════════════════════════════════
|
|
# Blueprint: главная страница
|
|
# ═══════════════════════════════════════════════════════════════════════════
|
|
|
|
# Корень модуля upload/frontend — для раздачи ES-модулей браузеру
|
|
_UPLOAD_FRONTEND_DIR = os.path.join(
|
|
os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))),
|
|
"upload", "frontend")
|
|
|
|
main_bp = Blueprint("main", __name__)
|
|
|
|
|
|
@main_bp.route("/")
|
|
def index():
|
|
"""Главная страница — веб-интерфейс DrHider.
|
|
|
|
Передаёт в шаблон текущую версию приложения.
|
|
"""
|
|
version = current_app.config.get("VERSION", "0.0.0")
|
|
return render_template("index.html", version=version)
|
|
|
|
|
|
@main_bp.route("/upload/<path:filename>")
|
|
def upload_frontend(filename):
|
|
"""Раздаёт ES-модули переиспользуемого слоя загрузки (upload/frontend)."""
|
|
return send_from_directory(_UPLOAD_FRONTEND_DIR, filename)
|