diff --git a/locales/de.json b/locales/de.json index a19e7047..e92069fc 100644 --- a/locales/de.json +++ b/locales/de.json @@ -225,9 +225,9 @@ }, "displayDensityHelp": "Wählen Sie, wie viele Karten pro Zeile angezeigt werden sollen:", "displayDensityDetails": { - "default": "Standard: 5 (1080p), 6 (2K), 8 (4K)", - "medium": "Mittel: 6 (1080p), 7 (2K), 9 (4K)", - "compact": "Kompakt: 7 (1080p), 8 (2K), 10 (4K)" + "default": "5 (1080p), 6 (2K), 8 (4K)", + "medium": "6 (1080p), 7 (2K), 9 (4K)", + "compact": "7 (1080p), 8 (2K), 10 (4K)" }, "displayDensityWarning": "Warnung: Höhere Dichten können bei Systemen mit begrenzten Ressourcen zu Performance-Problemen führen.", "cardInfoDisplay": "Karten-Info-Anzeige", @@ -237,8 +237,18 @@ }, "cardInfoDisplayHelp": "Wählen Sie, wann Modellinformationen und Aktionsschaltflächen angezeigt werden sollen:", "cardInfoDisplayDetails": { - "always": "Immer sichtbar: Kopf- und Fußzeilen sind immer sichtbar", - "hover": "Bei Hover anzeigen: Kopf- und Fußzeilen erscheinen nur beim Darüberfahren mit der Maus" + "always": "Kopf- und Fußzeilen sind immer sichtbar", + "hover": "Kopf- und Fußzeilen erscheinen nur beim Darüberfahren mit der Maus" + }, + "modelNameDisplay": "Anzeige des Modellnamens", + "modelNameDisplayOptions": { + "modelName": "Modellname", + "fileName": "Dateiname" + }, + "modelNameDisplayHelp": "Wählen Sie aus, was in der Fußzeile der Modellkarte angezeigt werden soll:", + "modelNameDisplayDetails": { + "modelName": "Den beschreibenden Namen des Modells anzeigen", + "fileName": "Den tatsächlichen Dateinamen auf der Festplatte anzeigen" } }, "folderSettings": { diff --git a/locales/en.json b/locales/en.json index 3785588d..23580ab5 100644 --- a/locales/en.json +++ b/locales/en.json @@ -225,9 +225,9 @@ }, "displayDensityHelp": "Choose how many cards to display per row:", "displayDensityDetails": { - "default": "Default: 5 (1080p), 6 (2K), 8 (4K)", - "medium": "Medium: 6 (1080p), 7 (2K), 9 (4K)", - "compact": "Compact: 7 (1080p), 8 (2K), 10 (4K)" + "default": "5 (1080p), 6 (2K), 8 (4K)", + "medium": "6 (1080p), 7 (2K), 9 (4K)", + "compact": "7 (1080p), 8 (2K), 10 (4K)" }, "displayDensityWarning": "Warning: Higher densities may cause performance issues on systems with limited resources.", "cardInfoDisplay": "Card Info Display", @@ -237,8 +237,18 @@ }, "cardInfoDisplayHelp": "Choose when to display model information and action buttons:", "cardInfoDisplayDetails": { - "always": "Always Visible: Headers and footers are always visible", - "hover": "Reveal on Hover: Headers and footers only appear when hovering over a card" + "always": "Headers and footers are always visible", + "hover": "Headers and footers only appear when hovering over a card" + }, + "modelNameDisplay": "Model Name Display", + "modelNameDisplayOptions": { + "modelName": "Model Name", + "fileName": "File Name" + }, + "modelNameDisplayHelp": "Choose what to display in the model card footer:", + "modelNameDisplayDetails": { + "modelName": "Display the model's descriptive name", + "fileName": "Display the actual file name on disk" } }, "folderSettings": { diff --git a/locales/es.json b/locales/es.json index a47d171e..0fade06f 100644 --- a/locales/es.json +++ b/locales/es.json @@ -225,9 +225,9 @@ }, "displayDensityHelp": "Elige cuántas tarjetas mostrar por fila:", "displayDensityDetails": { - "default": "Predeterminado: 5 (1080p), 6 (2K), 8 (4K)", - "medium": "Medio: 6 (1080p), 7 (2K), 9 (4K)", - "compact": "Compacto: 7 (1080p), 8 (2K), 10 (4K)" + "default": "5 (1080p), 6 (2K), 8 (4K)", + "medium": "6 (1080p), 7 (2K), 9 (4K)", + "compact": "7 (1080p), 8 (2K), 10 (4K)" }, "displayDensityWarning": "Advertencia: Densidades más altas pueden causar problemas de rendimiento en sistemas con recursos limitados.", "cardInfoDisplay": "Visualización de información de tarjeta", @@ -237,8 +237,18 @@ }, "cardInfoDisplayHelp": "Elige cuándo mostrar información del modelo y botones de acción:", "cardInfoDisplayDetails": { - "always": "Siempre visible: Los encabezados y pies de página siempre son visibles", - "hover": "Mostrar al pasar el ratón: Los encabezados y pies de página solo aparecen al pasar el ratón sobre una tarjeta" + "always": "Los encabezados y pies de página siempre son visibles", + "hover": "Los encabezados y pies de página solo aparecen al pasar el ratón sobre una tarjeta" + }, + "modelNameDisplay": "Visualización del nombre del modelo", + "modelNameDisplayOptions": { + "modelName": "Nombre del modelo", + "fileName": "Nombre del archivo" + }, + "modelNameDisplayHelp": "Elige qué mostrar en el pie de la tarjeta del modelo:", + "modelNameDisplayDetails": { + "modelName": "Mostrar el nombre descriptivo del modelo", + "fileName": "Mostrar el nombre real del archivo en el disco" } }, "folderSettings": { diff --git a/locales/fr.json b/locales/fr.json index 93556d9f..0d0976e1 100644 --- a/locales/fr.json +++ b/locales/fr.json @@ -225,9 +225,9 @@ }, "displayDensityHelp": "Choisissez combien de cartes afficher par ligne :", "displayDensityDetails": { - "default": "Par défaut : 5 (1080p), 6 (2K), 8 (4K)", - "medium": "Moyen : 6 (1080p), 7 (2K), 9 (4K)", - "compact": "Compact : 7 (1080p), 8 (2K), 10 (4K)" + "default": "5 (1080p), 6 (2K), 8 (4K)", + "medium": "6 (1080p), 7 (2K), 9 (4K)", + "compact": "7 (1080p), 8 (2K), 10 (4K)" }, "displayDensityWarning": "Attention : Des densités plus élevées peuvent causer des problèmes de performance sur les systèmes avec des ressources limitées.", "cardInfoDisplay": "Affichage des informations de carte", @@ -237,8 +237,18 @@ }, "cardInfoDisplayHelp": "Choisissez quand afficher les informations du modèle et les boutons d'action :", "cardInfoDisplayDetails": { - "always": "Toujours visible : Les en-têtes et pieds de page sont toujours visibles", - "hover": "Révéler au survol : Les en-têtes et pieds de page n'apparaissent qu'au survol d'une carte" + "always": "Les en-têtes et pieds de page sont toujours visibles", + "hover": "Les en-têtes et pieds de page n'apparaissent qu'au survol d'une carte" + }, + "modelNameDisplay": "Affichage du nom du modèle", + "modelNameDisplayOptions": { + "modelName": "Nom du modèle", + "fileName": "Nom du fichier" + }, + "modelNameDisplayHelp": "Choisissez ce qui doit être affiché dans le pied de page de la carte du modèle :", + "modelNameDisplayDetails": { + "modelName": "Afficher le nom descriptif du modèle", + "fileName": "Afficher le nom réel du fichier sur le disque" } }, "folderSettings": { diff --git a/locales/he.json b/locales/he.json index 79fdd7e9..e4a14d81 100644 --- a/locales/he.json +++ b/locales/he.json @@ -225,9 +225,9 @@ }, "displayDensityHelp": "בחר כמה כרטיסים להציג בכל שורה:", "displayDensityDetails": { - "default": "ברירת מחדל: 5 (1080p), 6 (2K), 8 (4K)", - "medium": "בינוני: 6 (1080p), 7 (2K), 9 (4K)", - "compact": "קומפקטי: 7 (1080p), 8 (2K), 10 (4K)" + "default": "5 (1080p), 6 (2K), 8 (4K)", + "medium": "6 (1080p), 7 (2K), 9 (4K)", + "compact": "7 (1080p), 8 (2K), 10 (4K)" }, "displayDensityWarning": "אזהרה: צפיפויות גבוהות יותר עלולות לגרום לבעיות ביצועים במערכות עם משאבים מוגבלים.", "cardInfoDisplay": "תצוגת מידע בכרטיס", @@ -237,8 +237,18 @@ }, "cardInfoDisplayHelp": "בחר מתי להציג מידע על המודל וכפתורי פעולה:", "cardInfoDisplayDetails": { - "always": "תמיד גלוי: כותרות עליונות ותחתונות תמיד גלויות", - "hover": "חשוף בריחוף: כותרות עליונות ותחתונות מופיעות רק בעת ריחוף מעל כרטיס" + "always": "כותרות עליונות ותחתונות תמיד גלויות", + "hover": "כותרות עליונות ותחתונות מופיעות רק בעת ריחוף מעל כרטיס" + }, + "modelNameDisplay": "תצוגת שם מודל", + "modelNameDisplayOptions": { + "modelName": "שם מודל", + "fileName": "שם קובץ" + }, + "modelNameDisplayHelp": "בחר מה להציג בכותרת התחתונה של כרטיס המודל:", + "modelNameDisplayDetails": { + "modelName": "הצג את השם התיאורי של המודל", + "fileName": "הצג את שם הקובץ בפועל בדיסק" } }, "folderSettings": { diff --git a/locales/ja.json b/locales/ja.json index d39fccaa..96c5f967 100644 --- a/locales/ja.json +++ b/locales/ja.json @@ -225,9 +225,9 @@ }, "displayDensityHelp": "1行に表示するカード数を選択:", "displayDensityDetails": { - "default": "デフォルト:5(1080p)、6(2K)、8(4K)", - "medium": "中:6(1080p)、7(2K)、9(4K)", - "compact": "コンパクト:7(1080p)、8(2K)、10(4K)" + "default": "5(1080p)、6(2K)、8(4K)", + "medium": "6(1080p)、7(2K)、9(4K)", + "compact": "7(1080p)、8(2K)、10(4K)" }, "displayDensityWarning": "警告:高密度設定は、リソースが限られたシステムでパフォーマンスの問題を引き起こす可能性があります。", "cardInfoDisplay": "カード情報表示", @@ -237,8 +237,18 @@ }, "cardInfoDisplayHelp": "モデル情報とアクションボタンの表示タイミングを選択:", "cardInfoDisplayDetails": { - "always": "常に表示:ヘッダーとフッターが常に表示されます", - "hover": "ホバー時に表示:カードにホバーしたときのみヘッダーとフッターが表示されます" + "always": "ヘッダーとフッターが常に表示されます", + "hover": "カードにホバーしたときのみヘッダーとフッターが表示されます" + }, + "modelNameDisplay": "モデル名表示", + "modelNameDisplayOptions": { + "modelName": "モデル名", + "fileName": "ファイル名" + }, + "modelNameDisplayHelp": "モデルカードのフッターに表示する内容を選択:", + "modelNameDisplayDetails": { + "modelName": "モデルの説明的な名前を表示", + "fileName": "ディスク上の実際のファイル名を表示" } }, "folderSettings": { diff --git a/locales/ko.json b/locales/ko.json index a6565c10..584a75e9 100644 --- a/locales/ko.json +++ b/locales/ko.json @@ -225,9 +225,9 @@ }, "displayDensityHelp": "한 줄에 표시할 카드 수를 선택하세요:", "displayDensityDetails": { - "default": "기본: 5개 (1080p), 6개 (2K), 8개 (4K)", - "medium": "중간: 6개 (1080p), 7개 (2K), 9개 (4K)", - "compact": "조밀: 7개 (1080p), 8개 (2K), 10개 (4K)" + "default": "5개 (1080p), 6개 (2K), 8개 (4K)", + "medium": "6개 (1080p), 7개 (2K), 9개 (4K)", + "compact": "7개 (1080p), 8개 (2K), 10개 (4K)" }, "displayDensityWarning": "경고: 높은 밀도는 리소스가 제한된 시스템에서 성능 문제를 일으킬 수 있습니다.", "cardInfoDisplay": "카드 정보 표시", @@ -237,8 +237,18 @@ }, "cardInfoDisplayHelp": "모델 정보 및 액션 버튼을 언제 표시할지 선택하세요:", "cardInfoDisplayDetails": { - "always": "항상 표시: 헤더와 푸터가 항상 보입니다", - "hover": "호버 시 표시: 카드에 마우스를 올렸을 때만 헤더와 푸터가 나타납니다" + "always": "헤더와 푸터가 항상 보입니다", + "hover": "카드에 마우스를 올렸을 때만 헤더와 푸터가 나타납니다" + }, + "modelNameDisplay": "모델명 표시", + "modelNameDisplayOptions": { + "modelName": "모델명", + "fileName": "파일명" + }, + "modelNameDisplayHelp": "모델 카드 하단에 표시할 내용을 선택하세요:", + "modelNameDisplayDetails": { + "modelName": "모델의 설명적 이름 표시", + "fileName": "디스크의 실제 파일명 표시" } }, "folderSettings": { diff --git a/locales/ru.json b/locales/ru.json index 5a3b496e..7197a0ae 100644 --- a/locales/ru.json +++ b/locales/ru.json @@ -225,9 +225,9 @@ }, "displayDensityHelp": "Выберите количество карточек для отображения в ряду:", "displayDensityDetails": { - "default": "По умолчанию: 5 (1080p), 6 (2K), 8 (4K)", - "medium": "Средняя: 6 (1080p), 7 (2K), 9 (4K)", - "compact": "Компактная: 7 (1080p), 8 (2K), 10 (4K)" + "default": "5 (1080p), 6 (2K), 8 (4K)", + "medium": "6 (1080p), 7 (2K), 9 (4K)", + "compact": "7 (1080p), 8 (2K), 10 (4K)" }, "displayDensityWarning": "Предупреждение: Высокая плотность может вызвать проблемы с производительностью на системах с ограниченными ресурсами.", "cardInfoDisplay": "Отображение информации карточки", @@ -237,8 +237,18 @@ }, "cardInfoDisplayHelp": "Выберите когда отображать информацию о модели и кнопки действий:", "cardInfoDisplayDetails": { - "always": "Всегда видимо: Заголовки и подписи всегда видны", - "hover": "Показать при наведении: Заголовки и подписи появляются только при наведении на карточку" + "always": "Заголовки и подписи всегда видны", + "hover": "Заголовки и подписи появляются только при наведении на карточку" + }, + "modelNameDisplay": "Отображение названия модели", + "modelNameDisplayOptions": { + "modelName": "Название модели", + "fileName": "Имя файла" + }, + "modelNameDisplayHelp": "Выберите, что отображать в нижней части карточки модели:", + "modelNameDisplayDetails": { + "modelName": "Отображать описательное название модели", + "fileName": "Отображать фактическое имя файла на диске" } }, "folderSettings": { diff --git a/locales/zh-CN.json b/locales/zh-CN.json index 474b61ca..6b79753e 100644 --- a/locales/zh-CN.json +++ b/locales/zh-CN.json @@ -225,9 +225,9 @@ }, "displayDensityHelp": "选择每行显示卡片数量:", "displayDensityDetails": { - "default": "默认:5(1080p),6(2K),8(4K)", - "medium": "中等:6(1080p),7(2K),9(4K)", - "compact": "紧凑:7(1080p),8(2K),10(4K)" + "default": "5(1080p),6(2K),8(4K)", + "medium": "6(1080p),7(2K),9(4K)", + "compact": "7(1080p),8(2K),10(4K)" }, "displayDensityWarning": "警告:高密度可能导致资源有限的系统性能下降。", "cardInfoDisplay": "卡片信息显示", @@ -237,8 +237,18 @@ }, "cardInfoDisplayHelp": "选择何时显示模型信息和操作按钮:", "cardInfoDisplayDetails": { - "always": "始终可见:标题和底部始终显示", - "hover": "悬停时显示:仅在悬停卡片时显示标题和底部" + "always": "标题和底部始终显示", + "hover": "仅在悬停卡片时显示标题和底部" + }, + "modelNameDisplay": "模型名称显示", + "modelNameDisplayOptions": { + "modelName": "模型名称", + "fileName": "文件名" + }, + "modelNameDisplayHelp": "选择在模型卡片底部显示的内容:", + "modelNameDisplayDetails": { + "modelName": "显示模型的描述性名称", + "fileName": "显示磁盘上的实际文件名" } }, "folderSettings": { diff --git a/locales/zh-TW.json b/locales/zh-TW.json index 9e1385fd..631617d1 100644 --- a/locales/zh-TW.json +++ b/locales/zh-TW.json @@ -225,9 +225,9 @@ }, "displayDensityHelp": "選擇每行顯示卡片數量:", "displayDensityDetails": { - "default": "預設:5(1080p)、6(2K)、8(4K)", - "medium": "中等:6(1080p)、7(2K)、9(4K)", - "compact": "緊湊:7(1080p)、8(2K)、10(4K)" + "default": "5(1080p)、6(2K)、8(4K)", + "medium": "6(1080p)、7(2K)、9(4K)", + "compact": "7(1080p)、8(2K)、10(4K)" }, "displayDensityWarning": "警告:較高密度可能導致資源有限的系統效能下降。", "cardInfoDisplay": "卡片資訊顯示", @@ -237,8 +237,18 @@ }, "cardInfoDisplayHelp": "選擇何時顯示模型資訊與操作按鈕:", "cardInfoDisplayDetails": { - "always": "永遠顯示:標題與頁腳始終可見", - "hover": "滑鼠懸停顯示:標題與頁腳僅在滑鼠懸停時顯示" + "always": "標題與頁腳始終可見", + "hover": "標題與頁腳僅在滑鼠懸停時顯示" + }, + "modelNameDisplay": "模型名稱顯示", + "modelNameDisplayOptions": { + "modelName": "模型名稱", + "fileName": "檔案名稱" + }, + "modelNameDisplayHelp": "選擇在模型卡片底部顯示的內容:", + "modelNameDisplayDetails": { + "modelName": "顯示模型的描述性名稱", + "fileName": "顯示磁碟上的實際檔案名稱" } }, "folderSettings": { diff --git a/py/routes/handlers/misc_handlers.py b/py/routes/handlers/misc_handlers.py index 30443149..c4473ca9 100644 --- a/py/routes/handlers/misc_handlers.py +++ b/py/routes/handlers/misc_handlers.py @@ -163,6 +163,7 @@ class SettingsHandler: "show_only_sfw", "compact_mode", "priority_tags", + "model_name_display", ) _PROXY_KEYS = {"proxy_enabled", "proxy_host", "proxy_port", "proxy_username", "proxy_password", "proxy_type"} diff --git a/py/services/settings_manager.py b/py/services/settings_manager.py index 62f67169..13d6ea0a 100644 --- a/py/services/settings_manager.py +++ b/py/services/settings_manager.py @@ -44,6 +44,7 @@ DEFAULT_SETTINGS: Dict[str, Any] = { "include_trigger_words": False, "compact_mode": False, "priority_tags": DEFAULT_PRIORITY_TAG_CONFIG.copy(), + "model_name_display": "model_name", } diff --git a/static/js/components/shared/ModelCard.js b/static/js/components/shared/ModelCard.js index 55977d63..9d425f9e 100644 --- a/static/js/components/shared/ModelCard.js +++ b/static/js/components/shared/ModelCard.js @@ -11,6 +11,17 @@ import { showDeleteModal } from '../../utils/modalUtils.js'; import { translate } from '../../utils/i18nHelpers.js'; import { eventManager } from '../../utils/EventManager.js'; +// Helper function to get display name based on settings +function getDisplayName(model) { + const displayNameSetting = state.global.settings.model_name_display || 'model_name'; + + if (displayNameSetting === 'file_name') { + return model.file_name || model.model_name || 'Unknown Model'; + } + + return model.model_name || model.file_name || 'Unknown Model'; +} + // Add global event delegation handlers using event manager export function setupModelCardEventDelegation(modelType) { // Remove any existing handler first @@ -510,7 +521,7 @@ export function createModelCard(model, modelType) { ` : ''}
+ +