espo-deploy/docker/config-override.php
Gordon Zimm 823cf43135 Ringe als Ordner: docker/<ring>/docker-compose.yml
Statt einer Vorlage fuer alle liegt je Ring eine vollstaendige Compose im Repo.
Eine Freigabe ist damit das Kopieren der Datei in den naechsten Ordner und in
jedem git diff sichtbar. Fuer den Anfang ist nur "0 - intern" gefuellt; die
beiden anderen Ordner erklaeren, dass dort noch kein Stand freigegeben ist.

espo-compose-rendern nimmt jetzt <fqdn> und <ring> und bricht ab, wenn fuer den
Ring kein Stand hinterlegt ist. Die Ringwerte 0/1/2 entsprechen dem Custom Field
espo_ring.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-23 14:40:48 +02:00

68 lines
3.2 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/**
* subcura – Grundeinstellungen für EspoCRM-Instanzen (deutscher Markt), unabhängig von Extensions.
*
* Mechanismus: EspoCRMs eigene data/config-override.php (ab v8.2) – wird nach config.php und config-internal.php geladen,
* überschreibt nur die hier gesetzten Schlüssel und wird von der Anwendung nie geschrieben (Änderungen an diesen
* Parametern über die Admin-UI bleiben wirkungslos). getenv() ist erlaubt.
* Anwendung: Kunden-VM: ESPO-10 legt die Datei vor dem ersten Start nach /srv/espo/data/config-override.php
* (Bind-Mount des EspoCRM-data-Verzeichnisses); danach Cache leeren.
* Entwicklungs- und Integrationsinstanzen: siehe espo-dev-env, Abschnitt 10.
* Nicht hier: instanzspezifische Werte (siteUrl, Datenbank, Mail-/SMTP-Daten, LDAP-Server, version).
* Geprüft gegen EspoCRM 10.0.8 (Settings.json / defaults/config.php).
*/
return [
// Sprache, Zeit, Zahlen
'language' => 'de_DE',
'timeZone' => 'Europe/Berlin',
'dateFormat' => 'DD.MM.YYYY',
'timeFormat' => 'HH:mm',
'weekStart' => 1, // Montag
'fiscalYearShift' => 0, // Geschäftsjahr = Kalenderjahr
'thousandSeparator' => '.',
'decimalMark' => ',',
// Währung
'currencyList' => ['EUR'],
'defaultCurrency' => 'EUR',
'baseCurrency' => 'EUR',
'currencyFormat' => 3, // "1.000,00 €" (Symbol nach dem Betrag)
'currencyDecimalPlaces' => 2,
// Adressen und Telefon
'addressFormat' => 2, // Straße / PLZ Ort / Land
'addressStateList' => [
'Baden-Württemberg', 'Bayern', 'Berlin', 'Brandenburg', 'Bremen', 'Hamburg', 'Hessen',
'Mecklenburg-Vorpommern', 'Niedersachsen', 'Nordrhein-Westfalen', 'Rheinland-Pfalz', 'Saarland',
'Sachsen', 'Sachsen-Anhalt', 'Schleswig-Holstein', 'Thüringen',
],
'addressCityList' => [],
'phoneNumberPreferredCountryList' => ['de'],
'phoneNumberInternational' => true, // E.164-Speicherung/-Validierung
// Listen
'recordsPerPage' => 50,
'recordsPerPageSmall' => 10,
'recordsPerPageSelect' => 20,
'recordsPerPageKanban' => 10,
// E-Mail und Export
'emailMessageMaxSize' => 25, // MB
'exportDelimiter' => ';', // CSV-Export für deutsches Excel
// Sicherheit (betrifft Espo-Passwörter: Admins, API-Benutzer; bei LDAP-Kunden die Nicht-LDAP-Konten)
'passwordStrengthLength' => 12,
'passwordStrengthBothCases' => true,
'passwordStrengthNumberCount' => 1,
'passwordStrengthSpecialCharacterCount' => 1,
'passwordGenerateLength' => 16,
'passwordRecoveryNoExposure' => true, // Passwort-Reset verrät nicht, ob eine Adresse existiert
'auth2FA' => true, // 2FA anbieten (nicht erzwingen: auth2FAForced)
// Authentifizierung: 'LDAP' nur zusammen mit den ldap*-Parametern der Kundeninstanz setzen
// (ldapHost, ldapPort, ldapSecurity, ldapUsername, ldapPassword, ldapBaseDn, ldapUserLoginFilter, ...).
// Ohne erreichbaren LDAP-Server können sich nur noch Admins anmelden. Dev-/Integrationsinstanz: 'Espo'.
// 'authenticationMethod' => 'LDAP',
];