fix bug
This commit is contained in:
@@ -94,8 +94,8 @@
|
||||
<script>
|
||||
// 内置默认语言
|
||||
const defaultI18n = {
|
||||
zh: { name: "简体中文", dropHint: "📂 <b>拖入</b>生成的文件到这里", clickHint: "或者 点击此处手动选择", labelMatch: "一致 (Match)", labelMismatch: "损坏 (Mismatch)", labelMissing: "缺失 (Missing)", labelExtra: "多余 (Extra)", btnExpand: "全部展开", btnCollapse: "全部收起", modeFull: "显示模式:完整清单", modeError: "显示模式:只看异常", loadSuccess: "✅ 已加载:", files: " 个文件", labelFiles: "切换文件:", selectPlaceholder: "--- 请选择已加载的报告 ---", btnPickDir: "📂 选择结果目录" },
|
||||
en: { name: "English", dropHint: "📂 <b>Drag</b> your file here", clickHint: "or click to select manually", labelMatch: "Match", labelMismatch: "Mismatch", labelMissing: "Missing", labelExtra: "Extra", btnExpand: "Expand All", btnCollapse: "Collapse All", modeFull: "View: All Files", modeError: "View: Errors Only", loadSuccess: "✅ Loaded: ", files: " files", labelFiles: "Switch File:", selectPlaceholder: "--- Select a loaded report ---", btnPickDir: "📂 Open Directory" }
|
||||
zh: { name: "简体中文", dropHint: "📂 <b>拖入</b>生成的文件到这里", clickHint: "或者 点击此处手动选择", labelMatch: "一致 (Match)", labelMismatch: "损坏 (Mismatch)", labelMissing: "缺失 (Missing)", labelExtra: "多余 (Extra)", btnExpand: "全部展开", btnCollapse: "全部收起", modeFull: "显示模式:完整清单", modeError: "显示模式:只看异常", loadSuccess: "✅ 已加载:", files: " 个文件", labelFiles: "切换文件:", selectPlaceholder: "--- 请选择已加载的报告 ---", btnPickDir: "📂 选择结果目录", loadComplete: "已成功加载 {n} 个报告文件。" },
|
||||
en: { name: "English", dropHint: "📂 <b>Drag</b> your file here", clickHint: "or click to select manually", labelMatch: "Match", labelMismatch: "Mismatch", labelMissing: "Missing", labelExtra: "Extra", btnExpand: "Expand All", btnCollapse: "Collapse All", modeFull: "View: All Files", modeError: "View: Errors Only", loadSuccess: "✅ Loaded: ", files: " files", labelFiles: "Switch File:", selectPlaceholder: "--- Select a loaded report ---", btnPickDir: "📂 Open Directory", loadComplete: "Successfully loaded {n} report files." }
|
||||
};
|
||||
|
||||
// 合并外部语言
|
||||
@@ -110,7 +110,7 @@
|
||||
try {
|
||||
const directoryHandle = await window.showDirectoryPicker();
|
||||
const dropdown = document.getElementById('fileDropdown');
|
||||
dropdown.innerHTML = `<option value="" disabled selected>${allI18n[currentLang].selectPlaceholder}</option>`;
|
||||
dropdown.innerHTML = `<option value="" disabled selected id="t-select-placeholder">${allI18n[currentLang].selectPlaceholder}</option>`;
|
||||
fileHandles = {};
|
||||
|
||||
for await (const entry of directoryHandle.values()) {
|
||||
@@ -122,7 +122,8 @@
|
||||
dropdown.appendChild(opt);
|
||||
}
|
||||
}
|
||||
alert(`已成功加载 ${Object.keys(fileHandles).length} 个报告文件。`);
|
||||
const msg = allI18n[currentLang].loadComplete.replace('{n}', Object.keys(fileHandles).length);
|
||||
alert(msg);
|
||||
} catch (err) {
|
||||
if (err.name !== 'AbortError') {
|
||||
console.error('选择目录失败:', err);
|
||||
@@ -159,20 +160,28 @@
|
||||
|
||||
function updateUI() {
|
||||
const t = allI18n[currentLang];
|
||||
document.getElementById('t-drop-hint').innerHTML = t.dropHint;
|
||||
document.getElementById('t-click-hint').innerText = t.clickHint;
|
||||
document.getElementById('t-label-match').innerText = t.labelMatch;
|
||||
document.getElementById('t-label-mismatch').innerText = t.labelMismatch;
|
||||
document.getElementById('t-label-missing').innerText = t.labelMissing;
|
||||
document.getElementById('t-label-extra').innerText = t.labelExtra;
|
||||
document.getElementById('t-btn-expand').innerText = t.btnExpand;
|
||||
document.getElementById('t-btn-collapse').innerText = t.btnCollapse;
|
||||
document.getElementById('t-label-files').innerText = t.labelFiles;
|
||||
document.getElementById('t-select-placeholder').innerText = t.selectPlaceholder;
|
||||
document.getElementById('btnSelectDir').innerText = t.btnPickDir;
|
||||
const setTxt = (id, txt, isHtml) => {
|
||||
const el = document.getElementById(id);
|
||||
if (el) isHtml ? el.innerHTML = txt : el.innerText = txt;
|
||||
};
|
||||
|
||||
setTxt('t-drop-hint', t.dropHint, true);
|
||||
setTxt('t-click-hint', t.clickHint);
|
||||
setTxt('t-label-match', t.labelMatch);
|
||||
setTxt('t-label-mismatch', t.labelMismatch);
|
||||
setTxt('t-label-missing', t.labelMissing);
|
||||
setTxt('t-label-extra', t.labelExtra);
|
||||
setTxt('t-btn-expand', t.btnExpand);
|
||||
setTxt('t-btn-collapse', t.btnCollapse);
|
||||
setTxt('t-label-files', t.labelFiles);
|
||||
setTxt('t-select-placeholder', t.selectPlaceholder);
|
||||
setTxt('btnSelectDir', t.btnPickDir);
|
||||
|
||||
const filterBtn = document.getElementById('toggleFilterBtn');
|
||||
filterBtn.innerText = errorMode ? t.modeError : t.modeFull;
|
||||
filterBtn.className = errorMode ? 'btn btn-danger' : 'btn btn-primary';
|
||||
if (filterBtn) {
|
||||
filterBtn.innerText = errorMode ? t.modeError : t.modeFull;
|
||||
filterBtn.className = errorMode ? 'btn btn-danger' : 'btn btn-primary';
|
||||
}
|
||||
}
|
||||
|
||||
// --- Rclone 处理逻辑 ---
|
||||
|
||||
@@ -13,6 +13,10 @@ window.externalI18n = {
|
||||
"modeFull": "Vista: Todos los archivos",
|
||||
"modeError": "Vista: Solo errores",
|
||||
"loadSuccess": "✅ Informe cargado: ",
|
||||
"files": " archivos"
|
||||
"files": " archivos",
|
||||
"labelFiles": "Cambiar archivo:",
|
||||
"selectPlaceholder": "--- Seleccione un informe ---",
|
||||
"btnPickDir": "📂 Directorio de resultados",
|
||||
"loadComplete": "Se han cargado {n} informes con éxito."
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user