- Change default use_tls from True to False to match typical STARTTLS setup - Add MailDeliveryError exception for mail delivery failures - Wrap send_mail calls in try-catch blocks to handle errors gracefully - Return 502 status code with error details when mail delivery fails - Add SMTP security mode selector in frontend (STARTTLS/TLS/None) - Add test mail form to admin panel - Handle empty SMTP credentials properly in update_mail_settings - Catch
148 lines
4.0 KiB
TypeScript
148 lines
4.0 KiB
TypeScript
import type { Language } from '../types';
|
|
|
|
export const dictionaries: Record<Language, Record<string, string>> = {
|
|
de: {
|
|
setupTitle: 'NexaPantry einrichten',
|
|
setupSubtitle: 'Erstelle den ersten Instance Admin und sichere die Instanz ab.',
|
|
name: 'Name',
|
|
email: 'E-Mail',
|
|
password: 'Passwort',
|
|
language: 'Sprache',
|
|
theme: 'Theme',
|
|
publicUrl: 'Öffentliche Server-URL',
|
|
instanceName: 'Instanzname',
|
|
timezone: 'Zeitzone',
|
|
completeSetup: 'Setup abschließen',
|
|
login: 'Anmelden',
|
|
logout: 'Abmelden',
|
|
home: 'Home',
|
|
inventory: 'Bestand',
|
|
add: 'Hinzufügen',
|
|
shopping: 'Einkauf',
|
|
profile: 'Profil',
|
|
admin: 'Admin',
|
|
dashboard: 'Dashboard',
|
|
users: 'Benutzer',
|
|
homes: 'Homes',
|
|
mail: 'Mail',
|
|
security: 'Sicherheit',
|
|
notifications: 'Benachrichtigungen',
|
|
system: 'System',
|
|
logs: 'Logs',
|
|
backupRestore: 'Backup/Restore',
|
|
categories: 'Kategorien',
|
|
locations: 'Orte',
|
|
manualAdd: 'Manuell hinzufügen',
|
|
scanBarcode: 'Barcode scannen',
|
|
productName: 'Produktname',
|
|
barcode: 'Barcode',
|
|
brand: 'Marke',
|
|
category: 'Kategorie',
|
|
location: 'Lagerort',
|
|
quantity: 'Menge',
|
|
unit: 'Einheit',
|
|
expiresAt: 'Ablaufdatum',
|
|
minQuantity: 'Mindestbestand',
|
|
notes: 'Notizen',
|
|
save: 'Speichern',
|
|
cancel: 'Abbrechen',
|
|
ok: 'haltbar',
|
|
soon: 'läuft bald ab',
|
|
expired: 'abgelaufen',
|
|
addToShopping: 'Zur Einkaufsliste',
|
|
recipes: 'Rezepte',
|
|
onboardingTitle: 'Willkommen in NexaPantry',
|
|
onboardingDone: 'Tutorial abschließen',
|
|
skip: 'Überspringen',
|
|
createHome: 'Home erstellen',
|
|
joinHome: 'Home per Code beitreten',
|
|
joinCode: 'Join-Code',
|
|
smtpHost: 'SMTP Host',
|
|
smtpPort: 'SMTP Port',
|
|
smtpUser: 'SMTP User',
|
|
smtpPassword: 'SMTP Passwort',
|
|
smtpSecurity: 'SMTP Sicherheit',
|
|
smtpStarttls: 'STARTTLS (typisch Port 587)',
|
|
smtpTls: 'TLS/SSL (typisch Port 465)',
|
|
smtpNone: 'Keine Verschlüsselung',
|
|
senderAddress: 'Absender-Adresse',
|
|
senderName: 'Absender-Name',
|
|
testMail: 'Testmail senden',
|
|
light: 'Light',
|
|
dark: 'Dark',
|
|
systemTheme: 'System'
|
|
},
|
|
en: {
|
|
setupTitle: 'Set up NexaPantry',
|
|
setupSubtitle: 'Create the first instance admin and secure the server.',
|
|
name: 'Name',
|
|
email: 'E-mail',
|
|
password: 'Password',
|
|
language: 'Language',
|
|
theme: 'Theme',
|
|
publicUrl: 'Public server URL',
|
|
instanceName: 'Instance name',
|
|
timezone: 'Timezone',
|
|
completeSetup: 'Complete setup',
|
|
login: 'Sign in',
|
|
logout: 'Sign out',
|
|
home: 'Home',
|
|
inventory: 'Inventory',
|
|
add: 'Add',
|
|
shopping: 'Shopping',
|
|
profile: 'Profile',
|
|
admin: 'Admin',
|
|
dashboard: 'Dashboard',
|
|
users: 'Users',
|
|
homes: 'Homes',
|
|
mail: 'Mail',
|
|
security: 'Security',
|
|
notifications: 'Notifications',
|
|
system: 'System',
|
|
logs: 'Logs',
|
|
backupRestore: 'Backup/Restore',
|
|
categories: 'Categories',
|
|
locations: 'Locations',
|
|
manualAdd: 'Add manually',
|
|
scanBarcode: 'Scan barcode',
|
|
productName: 'Product name',
|
|
barcode: 'Barcode',
|
|
brand: 'Brand',
|
|
category: 'Category',
|
|
location: 'Location',
|
|
quantity: 'Quantity',
|
|
unit: 'Unit',
|
|
expiresAt: 'Expiry date',
|
|
minQuantity: 'Minimum stock',
|
|
notes: 'Notes',
|
|
save: 'Save',
|
|
cancel: 'Cancel',
|
|
ok: 'good',
|
|
soon: 'expires soon',
|
|
expired: 'expired',
|
|
addToShopping: 'Add to shopping',
|
|
recipes: 'Recipes',
|
|
onboardingTitle: 'Welcome to NexaPantry',
|
|
onboardingDone: 'Finish tutorial',
|
|
skip: 'Skip',
|
|
createHome: 'Create home',
|
|
joinHome: 'Join home by code',
|
|
joinCode: 'Join code',
|
|
smtpHost: 'SMTP host',
|
|
smtpPort: 'SMTP port',
|
|
smtpUser: 'SMTP user',
|
|
smtpPassword: 'SMTP password',
|
|
smtpSecurity: 'SMTP security',
|
|
smtpStarttls: 'STARTTLS (usually port 587)',
|
|
smtpTls: 'TLS/SSL (usually port 465)',
|
|
smtpNone: 'No encryption',
|
|
senderAddress: 'Sender address',
|
|
senderName: 'Sender name',
|
|
testMail: 'Send test mail',
|
|
light: 'Light',
|
|
dark: 'Dark',
|
|
systemTheme: 'System'
|
|
}
|
|
};
|
|
|