Enhance German and English localization for various entities

- Updated translations in CAdressen, CBeteiligte, CDokumente, CMietobjekt, CVmhErstgespraech, CVmhMietverhltnis, CVmhRumungsklage to improve clarity and consistency.
- Added new fields and links for better user experience in German and English.
- Modified layout configurations for CMietobjekt and CVmhMietverhltnis to include additional details and improve navigation.
- Removed deprecated fields from CVmhRumungsklage metadata.
- Updated configuration timestamps for cache management.
This commit is contained in:
2026-01-20 15:13:57 +01:00
parent dfc8b952e9
commit b5ba0da5c2
22 changed files with 410 additions and 278 deletions

View File

@@ -198,10 +198,96 @@ Um EspoCRM anzupassen, bearbeite JSON-Dateien im custom/-Verzeichnis. Änderunge
Nach Änderungen muss ein Rebuild ausgeführt werden, um Caches zu leeren und Metadata neu zu mergen.
CLI-Befehl (im Docker-Container): docker exec espocrm php /var/www/html/command.php Rebuild
Alternative: Web-Interface > Administration > Clear Cache & Rebuild.
7. Panel-Labels und Übersetzungen
Um Relationship-Panels und Links korrekt zu beschriften, müssen Labels in den i18n-Sprachdateien definiert werden.
**Wichtig - Labels in allen Sprachen definieren**:
- Labels müssen in **allen installierten Sprachen** definiert werden (z. B. de_DE UND en_US)
- Fehlende Labels in einer Sprache können dazu führen, dass die Beschriftung nicht funktioniert
- Selbst wenn die Hauptsprache de_DE ist, sollten en_US Labels immer mit definiert werden
**Labels müssen in zwei Sektionen stehen**:
- `fields`: Für die Anzeige als Feld
- `links`: Für die Anzeige in Relationship-Panels
- Beide Sektionen müssen identische Werte haben
Pfade:
- `custom/Espo/Custom/Resources/i18n/de_DE/{EntityType}.json` (deutsch)
- `custom/Espo/Custom/Resources/i18n/en_US/{EntityType}.json` (englisch)
Struktur (Beispiel CBeteiligte.json):
```json
{
"fields": {
"address": "Adresse",
"vmhvermieterbeteiligte": "Vermieter",
"vmhmieterbeteiligte": "Mieter",
"vmhRumungsklagesKlaeger": "Kläger"
},
"links": {
"calls": "Anrufe",
"tasks": "Aufgaben",
"vmhvermieterbeteiligte": "Vermieter",
"vmhmieterbeteiligte": "Mieter",
"vmhRumungsklagesKlaeger": "Kläger"
},
"labels": {
"Create CBeteiligte": "Beteiligte erstellen"
}
}
```
Best Practice:
- Bei jeder neuen Relationship immer beide Sprachen (de_DE und en_US) aktualisieren
- Link-Namen in fields UND links eintragen
- Nach Änderungen Rebuild durchführen
- Das Admin UI macht dies automatisch, manuelle Änderungen müssen beide Dateien berücksichtigen
Effekt: Aktualisiert DB-Schema, Views und entfernt alte Caches. Ohne Rebuild sind Änderungen unsichtbar.
Hinweis: Führe den Befehl auf dem Host aus, da der Container den PHP-Zugang hat.
## 7. Custom Scripts und Tools
**Tooltips für Felder definieren**:
- Tooltips sind Hilfe-Texte, die beim Hovern über das Info-Icon neben einem Feld erscheinen
- Tooltips werden in einem separaten `tooltips`-Objekt in den i18n-Dateien definiert
- Das Feld muss in der entityDef mit `"tooltip": true` markiert sein, damit das Icon angezeigt wird
Aktivierung in entityDef (entityDefs/{EntityType}.json):
```json
{
"fields": {
"lage": {
"type": "varchar",
"required": false,
"maxLength": 255,
"tooltip": true,
"isCustom": true
}
}
}
```
Definition in i18n-Dateien (i18n/de_DE/{EntityType}.json):
```json
{
"fields": {
"lage": "Lage"
},
"links": {},
"labels": {},
"tooltips": {
"lage": "Lage innerhalb des Objekts (z.B. EG links, 1. OG rechts)"
}
}
```
Best Practice:
- Tooltip-Texte sollten kurz und prägnant sein (1-2 Sätze)
- Tooltips in allen Sprachen definieren (de_DE, en_US, etc.)
- Nach Änderungen Rebuild durchführen
- Tooltips werden nur angezeigt, wenn `"tooltip": true` in der entityDef gesetzt ist
## 8. Custom Scripts und Tools
Um die Entwicklung und Wartung zu erleichtern, wurden benutzerdefinierte Scripts im `custom/scripts/`-Ordner abgelegt. Diese Scripts überleben EspoCRM-Updates, da sie außerhalb der Core-Dateien liegen.