Files
timebank-cc-public/resources/views/emails/contact-form/email.blade.php
Ronald Huynen 2547717edb Initial commit
2026-03-23 21:37:59 +01:00

118 lines
6.3 KiB
PHP

@component('emails.layouts.html', ['locale' => app()->getLocale(), 'subject' => match($contact['context'] ?? 'contact') {
'report-issue' => __('Issue Report'),
'report-error' => __('Error Report'),
'delete-profile' => __('Profile Deletion Request'),
default => __('Contact Form Submission'),
}])
{{-- Title --}}
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 20px; font-weight: bold; color: {{ theme_color('text.primary') }}; margin: 0 0 20px 0; padding: 0; line-height: 1.4;">
{{ match($contact['context'] ?? 'contact') {
'report-issue' => __('Issue Report'),
'report-error' => __('Error Report'),
'delete-profile' => __('Profile Deletion Request'),
default => __('Contact Form Submission'),
} }}
</p>
{{-- Main message --}}
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 16px; color: {{ theme_color('text.primary') }}; margin: 0 0 20px 0; padding: 0; line-height: 1.5;">
{{ __('You have received a new :type from :site:', [
'type' => match($contact['context'] ?? 'contact') {
'report-issue' => __('issue report'),
'report-error' => __('error report'),
'delete-profile' => __('profile deletion request'),
default => __('contact form submission'),
},
'site' => config('app.name')
]) }}
</p>
{{-- Contact Information --}}
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" style="margin: 0 0 20px 0; border-collapse: collapse;">
<tr>
<td style="padding: 5px 0; font-family: Arial, Helvetica, sans-serif; font-size: 16px; font-weight: bold; color: {{ theme_color('text.primary') }}; width: 100px;">
{{ __('From') }}:
</td>
<td style="padding: 5px 0; font-family: Arial, Helvetica, sans-serif; font-size: 16px; color: {{ theme_color('text.primary') }};">
{{ $contact['name'] == $contact['full_name'] ? $contact['name'] : $contact['name'] . ' (' . $contact['full_name'] .')' }}
</td>
</tr>
<tr>
<td style="padding: 5px 0; font-family: Arial, Helvetica, sans-serif; font-size: 16px; font-weight: bold; color: {{ theme_color('text.primary') }};">
{{ __('Email') }}:
</td>
<td style="padding: 5px 0; font-family: Arial, Helvetica, sans-serif; font-size: 16px; color: {{ theme_color('text.primary') }};">
{{ $contact['email'] }}
</td>
</tr>
@if(!empty($contact['subject']))
<tr>
<td style="padding: 5px 0; font-family: Arial, Helvetica, sans-serif; font-size: 16px; font-weight: bold; color: {{ theme_color('text.primary') }};">
{{ __('Subject') }}:
</td>
<td style="padding: 5px 0; font-family: Arial, Helvetica, sans-serif; font-size: 16px; color: {{ theme_color('text.primary') }};">
{{ $contact['subject'] }}
</td>
</tr>
@endif
@if(!empty($contact['url']))
<tr>
<td style="padding: 5px 0; font-family: Arial, Helvetica, sans-serif; font-size: 16px; font-weight: bold; color: {{ theme_color('text.primary') }};">
{{ __('Page URL') }}:
</td>
<td style="padding: 5px 0; font-family: Arial, Helvetica, sans-serif; font-size: 16px; color: {{ theme_color('text.primary') }}; word-break: break-all;">
{{ $contact['url'] }}
</td>
</tr>
@endif
</table>
{{-- Message content panel --}}
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" style="margin: 0 0 20px 0; border-collapse: collapse; background-color: {{ theme_color('text.surface') }}; border-left: 4px solid {{ theme_color('text.secondary') }};">
<tr>
<td style="padding: 15px 20px;">
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 14px; font-weight: bold; color: {{ theme_color('text.secondary') }}; margin: 0 0 10px 0; padding: 0;">
{{ __('Message') }}:
</p>
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 14px; color: {{ theme_color('text.secondary') }}; margin: 0; padding: 0; line-height: 1.5; white-space: pre-wrap;">{{ $contact['message'] }}</p>
</td>
</tr>
</table>
{{-- Action Required for delete-profile --}}
@if(($contact['context'] ?? 'contact') === 'delete-profile')
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 16px; color: {{ theme_color('text.primary') }}; margin: 0 0 20px 0; padding: 15px; background-color: #fef3c7; border-left: 4px solid #f59e0b; line-height: 1.5;">
<strong>{{ __('Action Required') }}:</strong> {{ __('This user has requested profile deletion. Please review and process according to your data retention policies.') }}
</p>
@endif
{{-- View Profile Button --}}
@if(!empty($contact['is_authenticated']) && !empty($contact['profile_url']))
<table role="presentation" class="mobile-button" cellpadding="0" cellspacing="0" border="0" align="center" style="margin: 10px auto 20px auto;">
<tr>
<td align="center" style="border-radius: 6px; background-color: {{ theme_color('brand') }};">
<!--[if mso]>
<v:roundrect xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word" href="{{ $contact['profile_url'] }}" style="height:40px;v-text-anchor:middle;width:200px;" arcsize="15%" stroke="f" fillcolor="{{ theme_color('brand') }}">
<w:anchorlock/>
<center>
<![endif]-->
<a href="{{ $contact['profile_url'] }}" style="background-color: {{ theme_color('brand') }}; border-radius: 6px; color: #ffffff; display: block; font-family: Arial, Helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 40px; text-align: center; text-decoration: none; width: 200px; -webkit-text-size-adjust: none; mso-hide: all;">
{{ __('View :name', ['name' => $contact['full_name']]) }}
</a>
<!--[if mso]>
</center>
</v:roundrect>
<![endif]-->
</td>
</tr>
</table>
@endif
{{-- Subcopy --}}
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: {{ theme_color('text.muted') }}; margin: 30px 0 10px 0; padding: 0; line-height: 1.5; border-top: 1px solid #e5e7eb; padding-top: 20px;">
{{ __('This is an automated message from the contact form on :site.', ['site' => config('app.name')]) }}
</p>
@endcomponent