- 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="en">
|
|
<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>Your access has been set up.</p>
|
|
<p><strong>Username:</strong> {{username}}</p>
|
|
<p><a href="{{login_url}}">Go to login</a></p>
|
|
<p>
|
|
If you do not know your password, you can reset it here:
|
|
<a href="{{reset_url}}">Forgot password</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 via QR code</strong></p>
|
|
<p style="margin: 0 0 6px;">Scan the code to open the login page.</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;">Generated: {{generated_at}}</p>
|
|
<p>Best regards<br>{{app_name}}</p>
|
|
{{email_footer}}
|
|
</body>
|
|
</html>
|