From 6681ae80a012f55172dbaf7ec72d19b1cff2645c Mon Sep 17 00:00:00 2001 From: isaacclad Date: Mon, 8 Jun 2026 20:12:37 +0000 Subject: [PATCH] Add app-specific mail branding and sidebar Support links. Co-authored-by: Cursor --- config/mail_brands.php | 123 ++++++ .../images/logo/ladillqrplus-logo-email.png | Bin 0 -> 4173 bytes .../notifications/domain-verified.blade.php | 90 ++++ .../notifications/hosting-activated.blade.php | 64 +++ .../hosting-developer-added.blade.php | 47 ++ .../notifications/hosting-expiring.blade.php | 56 +++ .../notifications/hosting-suspended.blade.php | 59 +++ .../views/mail/notifications/layout.blade.php | 404 ++++++++++++++++++ .../notifications/qr-order-customer.blade.php | 74 ++++ .../notifications/qr-order-merchant.blade.php | 84 ++++ .../qr-order-status-updated.blade.php | 60 +++ .../mail/notifications/ssl-expiring.blade.php | 64 +++ .../notifications/ssl-provisioned.blade.php | 64 +++ .../mail/partials/brand-footer.blade.php | 20 + .../mail/partials/brand-header.blade.php | 7 + .../views/partials/sidebar-support.blade.php | 23 + resources/views/partials/sidebar.blade.php | 1 + 17 files changed, 1240 insertions(+) create mode 100644 config/mail_brands.php create mode 100644 public/images/logo/ladillqrplus-logo-email.png create mode 100644 resources/views/mail/notifications/domain-verified.blade.php create mode 100644 resources/views/mail/notifications/hosting-activated.blade.php create mode 100644 resources/views/mail/notifications/hosting-developer-added.blade.php create mode 100644 resources/views/mail/notifications/hosting-expiring.blade.php create mode 100644 resources/views/mail/notifications/hosting-suspended.blade.php create mode 100644 resources/views/mail/notifications/layout.blade.php create mode 100644 resources/views/mail/notifications/qr-order-customer.blade.php create mode 100644 resources/views/mail/notifications/qr-order-merchant.blade.php create mode 100644 resources/views/mail/notifications/qr-order-status-updated.blade.php create mode 100644 resources/views/mail/notifications/ssl-expiring.blade.php create mode 100644 resources/views/mail/notifications/ssl-provisioned.blade.php create mode 100644 resources/views/mail/partials/brand-footer.blade.php create mode 100644 resources/views/mail/partials/brand-header.blade.php create mode 100644 resources/views/partials/sidebar-support.blade.php diff --git a/config/mail_brands.php b/config/mail_brands.php new file mode 100644 index 0000000..c0fa4a7 --- /dev/null +++ b/config/mail_brands.php @@ -0,0 +1,123 @@ + env( + 'LADILL_ACCOUNT_URL', + 'https://'.env('ACCOUNT_DOMAIN', 'account.'.$platformHost) + ), + + 'brands' => [ + 'ladill' => [ + 'name' => 'Ladill', + 'logo' => 'ladill-logo-white.png', + 'logo_class' => 'email-logo', + 'app_url' => env('APP_URL', 'https://ladill.com'), + 'footer_account' => 'an account with Ladill', + 'dashboard_path' => '/dashboard', + 'support_path' => '/support', + 'home_label' => 'ladill.com', + ], + 'hosting' => [ + 'name' => 'Ladill Hosting', + 'logo' => 'ladillhosting-logo-email.png', + 'logo_class' => 'email-logo', + 'app_url' => env('LADILL_HOSTING_APP_URL', 'https://hosting.ladill.com'), + 'footer_account' => 'a Ladill Hosting account', + 'dashboard_path' => '/', + 'support_path' => '/support', + 'home_label' => 'hosting.ladill.com', + ], + 'domains' => [ + 'name' => 'Ladill Domains', + 'logo' => 'ladilldomains-logo-email.png', + 'logo_class' => 'email-logo', + 'app_url' => env('LADILL_DOMAINS_APP_URL', 'https://domains.ladill.com'), + 'footer_account' => 'a Ladill Domains account', + 'dashboard_path' => '/', + 'support_path' => '/support', + 'home_label' => 'domains.ladill.com', + ], + 'bird' => [ + 'name' => 'Ladill Bird', + 'logo' => 'ladillbird-logo-email.png', + 'logo_class' => 'email-logo', + 'app_url' => env('LADILL_BIRD_APP_URL', 'https://bird.ladill.com'), + 'footer_account' => 'a Ladill Bird account', + 'dashboard_path' => '/', + 'support_path' => '/support', + 'home_label' => 'bird.ladill.com', + ], + 'mail' => [ + 'name' => 'Ladill Mail', + 'logo' => 'ladillmail-logo-email.png', + 'logo_class' => 'email-logo', + 'app_url' => env('LADILL_WEBMAIL_URL', 'https://mail.ladill.com'), + 'footer_account' => 'a Ladill Mail account', + 'dashboard_path' => '/', + 'support_path' => '/support', + 'home_label' => 'mail.ladill.com', + ], + 'email' => [ + 'name' => 'Ladill Email', + 'logo' => 'ladillemail-logo-email.png', + 'logo_class' => 'email-logo', + 'app_url' => env('LADILL_EMAIL_APP_URL', 'https://email.ladill.com'), + 'footer_account' => 'a Ladill Email account', + 'dashboard_path' => '/', + 'support_path' => '/support', + 'home_label' => 'email.ladill.com', + ], + 'qrplus' => [ + 'name' => 'Ladill QR Plus', + 'logo' => 'ladillqrplus-logo-email.png', + 'logo_class' => 'email-logo', + 'app_url' => env('LADILL_QR_APP_URL', 'https://qrplus.ladill.com'), + 'footer_account' => 'a Ladill QR Plus account', + 'dashboard_path' => '/', + 'support_path' => '/support', + 'home_label' => 'qrplus.ladill.com', + ], + 'events' => [ + 'name' => 'Ladill Events', + 'logo' => 'ladillevents-logo-email.png', + 'logo_class' => 'email-logo', + 'app_url' => env('LADILL_EVENTS_APP_URL', 'https://events.ladill.com'), + 'footer_account' => 'a Ladill Events account', + 'dashboard_path' => '/', + 'support_path' => '/support', + 'home_label' => 'events.ladill.com', + ], + 'transfer' => [ + 'name' => 'Ladill Transfer', + 'logo' => 'ladilltransfer-logo-email.png', + 'logo_class' => 'email-logo email-logo-transfer', + 'app_url' => env('LADILL_TRANSFER_APP_URL', 'https://transfer.ladill.com'), + 'footer_account' => 'a Ladill Transfer account', + 'dashboard_path' => '/', + 'support_path' => '/support', + 'home_label' => 'transfer.ladill.com', + ], + 'mini' => [ + 'name' => 'Ladill Mini', + 'logo' => 'ladillmini-logo-email.png', + 'logo_class' => 'email-logo', + 'app_url' => env('LADILL_MINI_APP_URL', 'https://mini.ladill.com'), + 'footer_account' => 'a Ladill Mini account', + 'dashboard_path' => '/', + 'support_path' => '/support', + 'home_label' => 'mini.ladill.com', + ], + 'servers' => [ + 'name' => 'Ladill Servers', + 'logo' => 'ladillservers-logo-email.png', + 'logo_class' => 'email-logo', + 'app_url' => env('LADILL_SERVERS_APP_URL', 'https://servers.ladill.com'), + 'footer_account' => 'a Ladill Servers account', + 'dashboard_path' => '/', + 'support_path' => '/support', + 'home_label' => 'servers.ladill.com', + ], + ], +]; diff --git a/public/images/logo/ladillqrplus-logo-email.png b/public/images/logo/ladillqrplus-logo-email.png new file mode 100644 index 0000000000000000000000000000000000000000..2bb6e7f486ad4f68846c6e95d19f5fe88e72b982 GIT binary patch literal 4173 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 XGR$c+7LgHd00000NkvXXu0mjfLQcq9 literal 0 HcmV?d00001 diff --git a/resources/views/mail/notifications/domain-verified.blade.php b/resources/views/mail/notifications/domain-verified.blade.php new file mode 100644 index 0000000..1db6f71 --- /dev/null +++ b/resources/views/mail/notifications/domain-verified.blade.php @@ -0,0 +1,90 @@ +@extends('mail.notifications.layout') + +@section('email-header') + @include('mail.partials.brand-header', ['brand' => 'domains']) +@endsection + +@section('email-footer') + @include('mail.partials.brand-footer', ['brand' => 'domains']) +@endsection + +@section('content') +
+

Domain Verified!

+

{{ $domain->host }} is now active

+
+ +

Your Domain is Ready

+ + + + + + + +
    +
  • Create email addresses like hello@{{ $domain->host }}
  • +
  • Connect this domain to your website
  • +
  • Manage DNS records from your dashboard
  • +
+ +

+ +
+ +

+@endsection diff --git a/resources/views/mail/notifications/hosting-activated.blade.php b/resources/views/mail/notifications/hosting-activated.blade.php new file mode 100644 index 0000000..4e38851 --- /dev/null +++ b/resources/views/mail/notifications/hosting-activated.blade.php @@ -0,0 +1,64 @@ +@extends('mail.notifications.layout') + +@section('email-header') + @include('mail.partials.brand-header', ['brand' => 'hosting']) +@endsection + +@section('email-footer') + @include('mail.partials.brand-footer', ['brand' => 'hosting']) +@endsection + +@section('content') +

Your hosting is now active! 🖥️

+ + + +
+

{{ $planName }}

+

Your hosting is live and ready

+
+ + + +

+ +

+ + + + +@endsection diff --git a/resources/views/mail/notifications/hosting-developer-added.blade.php b/resources/views/mail/notifications/hosting-developer-added.blade.php new file mode 100644 index 0000000..5a0048e --- /dev/null +++ b/resources/views/mail/notifications/hosting-developer-added.blade.php @@ -0,0 +1,47 @@ +@extends('mail.notifications.layout') + +@section('email-header') + @include('mail.partials.brand-header', ['brand' => 'hosting']) +@endsection + +@section('email-footer') + @include('mail.partials.brand-footer', ['brand' => 'hosting']) +@endsection + +@section('content') +

You were added to a hosting team

+

+ {{ $ownerName }} granted you developer access to the following Ladill hosting environment{{ count($accountLabels) === 1 ? '' : 's' }}: +

+ +
    + @foreach ($accountLabels as $label) +
  • {{ $label }}
  • + @endforeach +
+ +

+ You now have full access to the hosting panel for {{ count($accountLabels) === 1 ? 'this account' : 'these accounts' }} — manage files, domains, databases, SSL, cron jobs, and more. +

+ +

+ To connect via SSH or SFTP, add your public key from the hosting panel Settings page after signing in. +

+ + @if ($setupUrl) + +

+ Use the button above to activate your account before signing in. +

+ @else + + @endif + +

+ After signing in, open your dashboard here: {{ $dashboardUrl }} +

+@endsection diff --git a/resources/views/mail/notifications/hosting-expiring.blade.php b/resources/views/mail/notifications/hosting-expiring.blade.php new file mode 100644 index 0000000..dce0a10 --- /dev/null +++ b/resources/views/mail/notifications/hosting-expiring.blade.php @@ -0,0 +1,56 @@ +@extends('mail.notifications.layout') + +@section('email-header') + @include('mail.partials.brand-header', ['brand' => 'hosting']) +@endsection + +@section('email-footer') + @include('mail.partials.brand-footer', ['brand' => 'hosting']) +@endsection + +@section('content') +
+

Hosting Expiring Soon

+

{{ $account->primary_domain ?: $account->username }}

+
+ +

Your Hosting Plan is Expiring Soon

+ + + + + + + +

+ +

+ + + + +@endsection diff --git a/resources/views/mail/notifications/hosting-suspended.blade.php b/resources/views/mail/notifications/hosting-suspended.blade.php new file mode 100644 index 0000000..f63ca41 --- /dev/null +++ b/resources/views/mail/notifications/hosting-suspended.blade.php @@ -0,0 +1,59 @@ +@extends('mail.notifications.layout') + +@section('email-header') + @include('mail.partials.brand-header', ['brand' => 'hosting']) +@endsection + +@section('email-footer') + @include('mail.partials.brand-footer', ['brand' => 'hosting']) +@endsection + +@section('content') +
+

Account Suspended

+

Action Required

+
+ +

Your Hosting Account Has Been Suspended

+ + + + + + + +

+ +

+ + + + +@endsection diff --git a/resources/views/mail/notifications/layout.blade.php b/resources/views/mail/notifications/layout.blade.php new file mode 100644 index 0000000..3662c00 --- /dev/null +++ b/resources/views/mail/notifications/layout.blade.php @@ -0,0 +1,404 @@ + + + + + + + {{ $subject ?? 'Ladill Notification' }} + + + + + + + diff --git a/resources/views/mail/notifications/qr-order-customer.blade.php b/resources/views/mail/notifications/qr-order-customer.blade.php new file mode 100644 index 0000000..c273e0d --- /dev/null +++ b/resources/views/mail/notifications/qr-order-customer.blade.php @@ -0,0 +1,74 @@ +@extends('mail.notifications.layout') + +@section('email-header') + @include('mail.partials.brand-header', ['brand' => 'qrplus']) +@endsection + +@section('email-footer') + @include('mail.partials.brand-footer', ['brand' => 'qrplus']) +@endsection + +@section('content') +
+

✅ Order Confirmed

+

Order #{{ $order->id }}

+
+ +

Thanks for your order{{ $order->customer_name ? ', ' . explode(' ', $order->customer_name)[0] : '' }}!

+ + + + + + @if($order->items && count($order->items) > 0) + + @endif + + +@endsection diff --git a/resources/views/mail/notifications/qr-order-merchant.blade.php b/resources/views/mail/notifications/qr-order-merchant.blade.php new file mode 100644 index 0000000..7519afb --- /dev/null +++ b/resources/views/mail/notifications/qr-order-merchant.blade.php @@ -0,0 +1,84 @@ +@extends('mail.notifications.layout') + +@section('email-header') + @include('mail.partials.brand-header', ['brand' => 'qrplus']) +@endsection + +@section('email-footer') + @include('mail.partials.brand-footer', ['brand' => 'qrplus']) +@endsection + +@section('content') +
+

🛍️ New Order Received

+

Order #{{ $order->id }}

+
+ +

You have a new order!

+ + + + + + @if($order->items && count($order->items) > 0) + + @endif + + +@endsection diff --git a/resources/views/mail/notifications/qr-order-status-updated.blade.php b/resources/views/mail/notifications/qr-order-status-updated.blade.php new file mode 100644 index 0000000..f6e11b0 --- /dev/null +++ b/resources/views/mail/notifications/qr-order-status-updated.blade.php @@ -0,0 +1,60 @@ +@extends('mail.notifications.layout') + +@section('email-header') + @include('mail.partials.brand-header', ['brand' => 'qrplus']) +@endsection + +@section('email-footer') + @include('mail.partials.brand-footer', ['brand' => 'qrplus']) +@endsection + +@section('content') +
+

{{ $icon }} Order {{ $order->fulfillmentLabel() }}

+

Order #{{ $order->id }}

+
+ +

Your order status has been updated

+ + + + @php + $statusMessages = [ + 'confirmed' => 'Great news! The seller has confirmed your order and will begin processing it shortly.', + 'preparing' => 'Your order is currently being prepared.', + 'ready' => 'Your order is ready! Please come pick it up or expect delivery soon.', + 'delivered' => 'Your order has been delivered. Enjoy!', + 'cancelled' => 'Unfortunately your order has been cancelled. Please contact the seller for more information.', + ]; + $statusMsg = $statusMessages[$order->fulfillment_status] ?? ''; + @endphp + + @if($statusMsg) + + @endif + + + + +@endsection diff --git a/resources/views/mail/notifications/ssl-expiring.blade.php b/resources/views/mail/notifications/ssl-expiring.blade.php new file mode 100644 index 0000000..99547a8 --- /dev/null +++ b/resources/views/mail/notifications/ssl-expiring.blade.php @@ -0,0 +1,64 @@ +@extends('mail.notifications.layout') + +@section('email-header') + @include('mail.partials.brand-header', ['brand' => 'hosting']) +@endsection + +@section('email-footer') + @include('mail.partials.brand-footer', ['brand' => 'hosting']) +@endsection + +@section('content') +
+

⚠️ SSL Certificate Expiring

+

{{ $daysUntilExpiry }} days remaining

+
+ +

Action May Be Required

+ + + + + + + +
    +
  • Ensure your domain's nameservers still point to Ladill
  • +
  • Verify your domain hasn't expired at your registrar
  • +
  • Check that your website is accessible
  • +
+ +

+ +

+ + + + +@endsection diff --git a/resources/views/mail/notifications/ssl-provisioned.blade.php b/resources/views/mail/notifications/ssl-provisioned.blade.php new file mode 100644 index 0000000..8a3fa31 --- /dev/null +++ b/resources/views/mail/notifications/ssl-provisioned.blade.php @@ -0,0 +1,64 @@ +@extends('mail.notifications.layout') + +@section('email-header') + @include('mail.partials.brand-header', ['brand' => 'hosting']) +@endsection + +@section('email-footer') + @include('mail.partials.brand-footer', ['brand' => 'hosting']) +@endsection + +@section('content') +
+

🔒 SSL Certificate Active

+

{{ $domain->host }} is now secure

+
+ +

Your Site is Secure

+ + + + + + + +
    +
  • All traffic to your site is encrypted
  • +
  • Visitors see a secure padlock in their browser
  • +
  • Better search engine rankings (Google prefers HTTPS)
  • +
  • Certificate auto-renews before expiry
  • +
+ +

+ +

+ + + + +@endsection diff --git a/resources/views/mail/partials/brand-footer.blade.php b/resources/views/mail/partials/brand-footer.blade.php new file mode 100644 index 0000000..6f6b66a --- /dev/null +++ b/resources/views/mail/partials/brand-footer.blade.php @@ -0,0 +1,20 @@ +@php + $brandKey = $brand ?? 'ladill'; + $brandConfig = config("mail_brands.brands.{$brandKey}", config('mail_brands.brands.ladill')); + $appBase = rtrim((string) ($brandConfig['app_url'] ?? config('app.url')), '/'); + $dashboardPath = $brandConfig['dashboard_path'] ?? '/'; + $accountBase = rtrim((string) ($brandConfig['account_url'] ?? config('mail_brands.account_url', 'https://account.ladill.com')), '/'); + $supportUrl = $brandConfig['support_url'] ?? $accountBase.'/support-tickets'; + $homeLabel = $brandConfig['home_label'] ?? parse_url($appBase, PHP_URL_HOST) ?: 'ladill.com'; +@endphp + + + diff --git a/resources/views/mail/partials/brand-header.blade.php b/resources/views/mail/partials/brand-header.blade.php new file mode 100644 index 0000000..f6bce5a --- /dev/null +++ b/resources/views/mail/partials/brand-header.blade.php @@ -0,0 +1,7 @@ +@php + $brandKey = $brand ?? 'ladill'; + $brandConfig = config("mail_brands.brands.{$brandKey}", config('mail_brands.brands.ladill')); + $assetBase = rtrim((string) ($brandConfig['asset_url'] ?? config('app.url')), '/'); + $logoClass = trim((string) ($brandConfig['logo_class'] ?? 'email-logo')); +@endphp +{{ $brandConfig['name'] }} diff --git a/resources/views/partials/sidebar-support.blade.php b/resources/views/partials/sidebar-support.blade.php new file mode 100644 index 0000000..817932f --- /dev/null +++ b/resources/views/partials/sidebar-support.blade.php @@ -0,0 +1,23 @@ +@php + $useInternal = $internal ?? false; + if ($useInternal) { + $supportUrl = route('user.support-tickets.index'); + $openExternal = false; + } else { + $supportUrl = function_exists('ladill_account_url') + ? ladill_account_url('/support-tickets') + : 'https://'.config('app.account_domain', 'account.ladill.com').'/support-tickets'; + $openExternal = true; + } +@endphp + + + Support + @if($openExternal) + + @endif + diff --git a/resources/views/partials/sidebar.blade.php b/resources/views/partials/sidebar.blade.php index 54e06f4..0785fd3 100644 --- a/resources/views/partials/sidebar.blade.php +++ b/resources/views/partials/sidebar.blade.php @@ -39,6 +39,7 @@
+ @include('partials.sidebar-support')