- Add icanhazstring/composer-unused as dev dependency for dependency hygiene checks - Add German documentation (docs/) covering architecture, conventions, workflows, and developer checklists - Add API layer (ApiAuth, ApiBootstrap, ApiResponse), audit, scheduler, custom fields, and SSO services - Add Microsoft OIDC SSO, API token management, and user lifecycle features - Add swagger-ui vendor integration and OpenAPI spec - Add production Docker setup and bin/ scripts - Update composer dependencies, config, templates, and frontend assets throughout Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
34 lines
1.3 KiB
HTML
34 lines
1.3 KiB
HTML
<!doctype html>
|
|
<html lang="de">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>{{pdf_title}}</title>
|
|
</head>
|
|
<body style="font-family: DejaVu Sans, Arial, sans-serif; line-height: 1.45; color: #111;">
|
|
{{email_header}}
|
|
<p>{{greeting}}</p>
|
|
<p>dein Zugang wurde eingerichtet.</p>
|
|
<p><strong>Benutzername:</strong> {{username}}</p>
|
|
<p><a href="{{login_url}}">Zur Anmeldung</a></p>
|
|
<p>
|
|
Falls du dein Passwort nicht kennst, kannst du es hier zurücksetzen:
|
|
<a href="{{reset_url}}">Passwort vergessen</a>
|
|
</p>
|
|
<table role="presentation" cellspacing="0" cellpadding="0" style="margin-top: 20px;">
|
|
<tr>
|
|
<td style="padding-right: 16px; vertical-align: top;">
|
|
<img src="{{login_qr_data_uri}}" alt="Login QR" width="150" height="150" style="display: block; border: 1px solid #ddd; border-radius: 8px;">
|
|
</td>
|
|
<td style="vertical-align: top;">
|
|
<p style="margin-top: 0;"><strong>Login per QR-Code</strong></p>
|
|
<p style="margin: 0 0 6px;">Scanne den Code, um die Login-Seite zu öffnen.</p>
|
|
<p style="margin: 0;"><a href="{{login_url}}">{{login_url}}</a></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<p style="margin-top: 16px; font-size: 12px; color: #666;">Erstellt: {{generated_at}}</p>
|
|
<p>Viele Grüße<br>{{app_name}}</p>
|
|
{{email_footer}}
|
|
</body>
|
|
</html>
|