feat(i18n): settings.js und widgets.js auf t() umstellen
Reset-Dialog, Dateifehler, Widget-Buttons (Minimieren/Schließen) und Default-Titel verwenden jetzt i18n-Keys.
This commit is contained in:
@@ -115,6 +115,10 @@ const STRINGS = {
|
||||
'imageref.invalid_file': 'Bitte eine Bilddatei verwenden (PNG, JPG, WebP, etc.).',
|
||||
'imageref.invalid_file.title': 'Kein Bild',
|
||||
|
||||
// Widget-Manager
|
||||
'widget.minimize': 'Minimieren',
|
||||
'widget.close': 'Schließen',
|
||||
|
||||
// Daten (Export/Import)
|
||||
'data.invalid_format': 'Ungültiges Format',
|
||||
'data.no_boards': 'Keine gültigen Boards gefunden',
|
||||
@@ -406,6 +410,10 @@ const STRINGS = {
|
||||
'imageref.invalid_file': 'Please use an image file (PNG, JPG, WebP, etc.).',
|
||||
'imageref.invalid_file.title': 'Not an image',
|
||||
|
||||
// Widget manager
|
||||
'widget.minimize': 'Minimize',
|
||||
'widget.close': 'Close',
|
||||
|
||||
// Data (export/import)
|
||||
'data.invalid_format': 'Invalid format',
|
||||
'data.no_boards': 'No valid boards found',
|
||||
|
||||
+3
-3
@@ -188,7 +188,7 @@ function bindSettingsEvents() {
|
||||
await saveSettings();
|
||||
};
|
||||
reader.onerror = () => {
|
||||
HellionDialog.alert('Fehler beim Lesen der Datei. Bitte eine andere Datei wählen.', { type: 'danger', title: 'Dateifehler' });
|
||||
HellionDialog.alert(t('settings.file_read_error'), { type: 'danger', title: t('settings.file_read_error.title') });
|
||||
};
|
||||
reader.readAsDataURL(file);
|
||||
});
|
||||
@@ -224,8 +224,8 @@ function bindSettingsEvents() {
|
||||
// Reset All
|
||||
document.getElementById('btnResetAll').addEventListener('click', async () => {
|
||||
const ok = await HellionDialog.confirm(
|
||||
'Wirklich alle Boards und Einstellungen löschen? Das kann nicht rückgängig gemacht werden.',
|
||||
{ type: 'danger', title: 'Alles zurücksetzen', confirmText: 'Alles löschen' }
|
||||
t('settings.reset_confirm'),
|
||||
{ type: 'danger', title: t('settings.reset_confirm.title'), confirmText: t('settings.reset_confirm.button') }
|
||||
);
|
||||
if (!ok) return;
|
||||
boards = [];
|
||||
|
||||
+4
-4
@@ -20,7 +20,7 @@ const WidgetManager = {
|
||||
const state = {
|
||||
id,
|
||||
type,
|
||||
title: config.title || 'Note',
|
||||
title: config.title || t('notes.default_title'),
|
||||
x: config.x || 120,
|
||||
y: config.y || 80,
|
||||
width: config.width || 280,
|
||||
@@ -75,7 +75,7 @@ const WidgetManager = {
|
||||
title.addEventListener('blur', async () => {
|
||||
title.contentEditable = 'false';
|
||||
const newTitle = title.textContent.trim().slice(0, 20);
|
||||
title.textContent = newTitle || 'Note';
|
||||
title.textContent = newTitle || t('notes.default_title');
|
||||
const entry = this._widgets.get(state.id);
|
||||
if (entry) {
|
||||
entry.state.title = title.textContent;
|
||||
@@ -94,13 +94,13 @@ const WidgetManager = {
|
||||
|
||||
const btnMin = document.createElement('button');
|
||||
btnMin.className = 'widget-btn widget-minimize';
|
||||
btnMin.title = 'Minimieren';
|
||||
btnMin.title = t('widget.minimize');
|
||||
btnMin.textContent = '\u2500';
|
||||
btnMin.addEventListener('click', () => this.minimize(state.id));
|
||||
|
||||
const btnClose = document.createElement('button');
|
||||
btnClose.className = 'widget-btn widget-close';
|
||||
btnClose.title = 'Schließen';
|
||||
btnClose.title = t('widget.close');
|
||||
btnClose.textContent = '\u2715';
|
||||
btnClose.addEventListener('click', () => this.close(state.id));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user