KuzuhaScriptPHP+ (ksphp-plus) 安裝指南
適用範圍：帖子連結圖片縮圖功能（js/imgthumb.js）／
          JavaScript多語言支援（window.KSPHP_LANG）
時間格式：ISO 8601（精確到分鐘），時區為UTC
建立時間：2026-07-17T05:05 UTC

============================================================
【本壓縮包包含內容】
------------------------------------------------------------
這是與完整論壇指令碼包分開的差異包，僅包含本次新增／修改的
檔案。資料夾結構保持原樣（sub/, js/, language/, doc/）。

  bbs.php                      … 新增供JS使用的語言資料輸出處理
  sub/template.html            … 新增<script>載入／嵌入標籤
  js/imgthumb.js               … 新增：帖子連結圖片縮圖顯示
  js/ayashiibreaker.js         … 多語言支援化（改動）
  js/upthumb.js                … 多語言支援化（改動）
  js/vanish.js                 … 多語言支援化（改動，含判斷邏輯的漏洞修復）
  js/admin.js                  … 多語言支援化（改動）
  language/english.txt         … 新增鍵
  language/japanese.txt        … 新增鍵
  doc/changelog-2026-07-16-01.txt … 合併後的changelog（含本次內容）
  doc/CSScheck.txt             … 上次CSS調查報告（作為參考附帶）
  安裝指南.txt                  … 本檔案

  ※language/*.txt是由現有論壇指令碼端與JS端共同引用的單一檔案。
    檔案並未按端分開。

============================================================
【1. 帖子連結圖片縮圖功能（js/imgthumb.js）】
------------------------------------------------------------
當帖子正文中的URL指向實際存在的圖片檔案（預設支援的副檔名為
jpg/jpeg/png/gif/webp/bmp/avif/svg）時，會在該URL右側自動
顯示縮圖。

  ・這是與現有js/upthumb.js（針對特定上傳工具的已知目錄結構）
    相互獨立的另一個檔案。兩者可以同時啟用。
  ・在顯示前會透過HEAD請求確認URL確實存在且Content-Type為
    image/*（不僅僅根據副檔名判斷）。
  ・會在發帖表單旁邊（與現有"Uploader thumbnails"同一行）新增
    "Link thumbnails"核取方塊。開啟／關閉狀態儲存在瀏覽器的
    localStorage中，不會傳送到伺服器。
  ・目標副檔名的篩選，透過個人環境設定介面（?setup=1）中自動
    新增的核取方塊組進行。預設全部勾選。這也僅儲存於localStorage，
    不包含在設定表單的提交內容中。

  【安裝步驟】
  1. 將 js/imgthumb.js 放入 js/ 目錄。
  2. 替換 sub/template.html（<head>內的指令碼載入部分已新增了
     <script src="js/imgthumb.js" defer></script> 一行）。
  3. 替換 bbs.php（包含下文所述的window.KSPHP_LANG嵌入處理）。
  4. 替換 language/english.txt・language/japanese.txt（已新增
     12個鍵，未改動現有鍵）。
  無需特殊設定。只需放置檔案即可生效。

============================================================
【2. JavaScript多語言支援（window.KSPHP_LANG）】
------------------------------------------------------------
迄今為止，論壇本體（PHP模板）已透過語言檔案（language/*.txt）
實現多語言支援，但js/下各指令碼中的文字（按鈕標籤等）不在此
範圍內，一直以固定文字顯示。

本次在bbs.php端新增了將語言檔案內容轉換為JSON、並在HTML的
<head>內、其他指令碼之前

    <script>window.KSPHP_LANG = { ... };</script>

的形式嵌入的機制。這樣一來，js/下的指令碼便可以透過

    window.KSPHP_LANG.鍵名

的形式，直接引用language/*.txt中定義的文字。
（例：window.KSPHP_LANG.MAKE_LINE_BREAKS_BTN）

  【本次已適配該機制的檔案】
  js/ayashiibreaker.js, js/upthumb.js, js/imgthumb.js, js/vanish.js,
  js/admin.js 共5個檔案。

  【今後為新的JS檔案新增多語言支援時】
  1. 在language/english.txt・language/japanese.txt中新增鍵，以及
     對應的日語／英語文字（按照現有鍵值格式，以KEY=值的單行形式）。
  2. 在JS檔案中引用 `window.KSPHP_LANG.鍵名`。為應對尚未載入完成
     的情況，建議按
     `(window.KSPHP_LANG && window.KSPHP_LANG.鍵名) || "預設值"`
     的形式準備後備值。
  3. 無需修改伺服器端（PHP）（window.KSPHP_LANG會在所有頁面
     自動輸出）。

============================================================
【已確認動作事項】
------------------------------------------------------------
- 全部PHP檔案：經php -l確認無語法錯誤
- 全部JS檔案（改動及新增部分）：經node --check確認無語法錯誤
- language/english.txt・language/japanese.txt：鍵數一致（216個），
  無重複鍵
- 已在論壇主頁・過去日誌搜尋・樹狀檢視・管理員登入（GET/POST）・
  個人設定介面・管理選單的所有路徑下確認：在日語、英語兩種
  LANGUAGE_FILE設定下均返回HTTP 200，不殘留{PLACEHOLDER}渲染痕跡，
  window.KSPHP_LANG以有效的JSON形式輸出。
