Initialer Commit: Kundenverwaltung (PHP/Smarty)

Bestehende Codebasis als Ausgangsstand aufgenommen.

- .gitignore: Kundendaten (uploads_*), Smarty-Compile-Cache
  (templates_c), Laufzeit-Temp und Datenbank-Dumps ausgeschlossen;
  Verzeichnisstruktur ueber .gitkeep erhalten
- .gitattributes: Zeilenenden normalisiert (LF im Repo),
  Binaerformate markiert
- db-backup.php: MySQL-Zugangsdaten kommen jetzt wie im Rest der
  Anwendung aus der externen Konfiguration statt hartkodiert aus der
  Datei; Passwort wird ueber eine temporaere Optionsdatei statt per
  Kommandozeile uebergeben, Fehler von mysqldump/gzip werden gemeldet,
  Aufraeumen aelterer Backups berechnet Jahr und Monat konsistent

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-28 16:41:18 +02:00
co-authored by Claude Opus 5
commit e2124220e5
2225 changed files with 1070301 additions and 0 deletions
@@ -0,0 +1,27 @@
Gemalto MultiApp FIDO Authenticator
-----------------------------------
-----BEGIN CERTIFICATE-----
MIIECTCCAvGgAwIBAgIMR3MEC+UtMnHSFSytMA0GCSqGSIb3DQEBCwUAMGoxCzAJ
BgNVBAYTAkZSMQ4wDAYDVQQHDAVUb3VyczEQMA4GA1UECgwHR2VtYWx0bzE5MDcG
A1UEAwwwR2VtYWx0byBCdXNpbmVzcyBTb2x1dGlvbnMgQ2VydGlmaWNhdGUgQXV0
aG9yaXR5MB4XDTE5MDUwMjE0MzU1M1oXDTI5MDUwMTE0MzY1M1owTjELMAkGA1UE
BhMCRlIxEzARBgNVBAoMCkdlbWFsdG8gU0ExDDAKBgNVBAsMA0RJUzEcMBoGA1UE
AwwTd3d3LnRoYWxlc2dyb3VwLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
AQoCggEBAK1q3MIB0ekGBbKwZ0FWKMFom1ehsAyEL1UfGXe18ZTyhyVg+Vchy/iH
9o3sq0fPCkuDy29iAPjyWWOQTf7qdS1ETq8iRpKNSxxplJkVGnSzLzK+xCDx5M4d
aHJLp88W2JO8HL0Wci8JroNm3Uz7YR+z4UU0apzObdd2lRwEE0mp1TDFJ0jxT+xa
hlzZAldf92//sWddoYRrTodc/jdefEX9bmgwHNTt3zHBJoP88yoQ12nUKHes3N2/
qQx3HjA2+ySFfmdYAqerDej52orvA1V/Qpd87PV9DBNI0t9tB01t+6PbuPojfeqS
lNBm1kTqKyU9OKmVw8BwQEXQKmT+t0sCAwEAAaOByjCBxzASBgNVHRMBAf8ECDAG
AQH/AgEAMB0GA1UdDgQWBBQvMq30QjeHLOzWmDi53KEOg86GjDAfBgNVHSMEGDAW
gBR3VfWnLWVDUohSlYrzg23yYaA2bjAOBgNVHQ8BAf8EBAMCAQYwYQYDVR0fBFow
WDBWoFSgUoZQaHR0cDovL2NybC1icGtpLmdlbWFsdG8uY29tL0NSTC9HZW1hbHRv
QnVzaW5lc3NTb2x1dGlvbnNDZXJ0aWZpY2F0ZUF1dGhvcml0eS5jcmwwDQYJKoZI
hvcNAQELBQADggEBAHckIlQopNiBCD6mMSiEg07taoZZNVPLKASv54ZqXofxhIdo
qlqts/W5NYJ6T+/Fwhn7mSebCKnwuUhaqByVkVt7kheBIw/F6aPaAdU8YIcuL8bk
vGPvt5oQmU99buUV1pTbrEedU1RYlWLe4Etn6LSiEyKKpsDoBQBHWsJEjgVqHKFe
RkQ/WgFmGc1+wxRyKAGFothrtraw1rerK3p+BNy0GRtfMN7tOnTn2giOvtOtebMB
CYzyeRl/9XALfUC8Mw+Ooxvc51OE7lhe2yjuO3xF3SjE0ax+cWAjGQHhuIuVdfX8
CVu/R5SG52zA9Oo4yug+cjKieAAEu2OPH+imIyM=
-----END CERTIFICATE-----