diff --git a/app.py b/app.py index c006dec..ff77163 100644 --- a/app.py +++ b/app.py @@ -30,6 +30,7 @@ except OSError as e: # ================= 🔧 2. 核心模組導入 ================= try: from flask import Flask, render_template, jsonify, request, send_file, redirect, url_for, send_from_directory, flash, session + from jinja2 import ChoiceLoader, FileSystemLoader from werkzeug.utils import secure_filename from pyngrok import ngrok, conf import schedule @@ -127,6 +128,7 @@ else: sys_log.warning("[Security] ⚠️ NGROK_AUTH_TOKEN 未設定,已跳過 ngrok auth token 注入") TEMPLATE_DIR = os.path.join(BASE_DIR, 'templates') +WEB_TEMPLATE_DIR = os.path.join(BASE_DIR, 'web/templates') STATIC_DIR = os.path.join(BASE_DIR, 'web/static') # 檢查關鍵模板是否存在 @@ -137,6 +139,13 @@ app = Flask(__name__, template_folder=TEMPLATE_DIR, static_folder=STATIC_DIR) +if os.path.isdir(WEB_TEMPLATE_DIR): + # Keep newer module templates ahead of stale legacy copies that may exist on older hosts. + app.jinja_loader = ChoiceLoader([ + FileSystemLoader(WEB_TEMPLATE_DIR), + app.jinja_loader, + ]) + # ========================================== # 🔒 Flask 安全配置 # ========================================== diff --git a/config.py b/config.py index 0726911..2117f17 100644 --- a/config.py +++ b/config.py @@ -320,7 +320,7 @@ YOUTUBE_API_KEY = os.getenv('YOUTUBE_API_KEY', '') # ========================================== # 系統版本與路徑 # ========================================== -SYSTEM_VERSION = "V10.142" +SYSTEM_VERSION = "V10.143" LOG_FILE_PATH = os.path.join(BASE_DIR, 'logs/system.log') public_url = PUBLIC_URL # 用於模板顯示