Save workspace changes
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Skinbase Email Verification</title>
|
||||
</head>
|
||||
<body style="margin:0;padding:0;background:#0f172a;color:#e2e8f0;font-family:Arial,sans-serif;">
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="background:#0f172a;padding:24px;">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="max-width:560px;background:#111827;border:1px solid #1f2937;border-radius:12px;overflow:hidden;">
|
||||
<tr>
|
||||
<td style="padding:24px;">
|
||||
<h1 style="margin:0 0 12px 0;font-size:20px;line-height:1.2;color:#f8fafc;">Verify your new email address</h1>
|
||||
<p style="margin:0 0 16px 0;font-size:14px;line-height:1.6;color:#cbd5e1;">Use this code to confirm your email change on Skinbase:</p>
|
||||
<p style="margin:0 0 16px 0;font-size:32px;line-height:1.2;font-weight:700;letter-spacing:4px;color:#f8fafc;">{{ $code }}</p>
|
||||
<p style="margin:0 0 12px 0;font-size:14px;line-height:1.6;color:#cbd5e1;">This code expires in {{ $expiresInMinutes }} minutes.</p>
|
||||
<p style="margin:0;font-size:13px;line-height:1.5;color:#94a3b8;">If you did not request this change, you can ignore this email.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,26 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Skinbase Security Alert</title>
|
||||
</head>
|
||||
<body style="margin:0;padding:0;background:#0f172a;color:#e2e8f0;font-family:Arial,sans-serif;">
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="background:#0f172a;padding:24px;">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="max-width:560px;background:#111827;border:1px solid #1f2937;border-radius:12px;overflow:hidden;">
|
||||
<tr>
|
||||
<td style="padding:24px;">
|
||||
<h1 style="margin:0 0 12px 0;font-size:20px;line-height:1.2;color:#f8fafc;">Your Skinbase email address was changed</h1>
|
||||
<p style="margin:0 0 12px 0;font-size:14px;line-height:1.6;color:#cbd5e1;">Your account email is now set to <strong>{{ $newEmail }}</strong>.</p>
|
||||
<p style="margin:0 0 12px 0;font-size:14px;line-height:1.6;color:#cbd5e1;">If you did not perform this action, contact support immediately.</p>
|
||||
<p style="margin:0;font-size:13px;line-height:1.5;color:#94a3b8;">Support: {{ $supportEmail }}</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,39 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Verify your email</title>
|
||||
</head>
|
||||
<body style="margin:0;padding:20px;background:#0b0f14;font-family:system-ui,-apple-system,Segoe UI,Roboto,'Helvetica Neue',Arial;color:#e6eef6;">
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<table role="presentation" width="600" cellpadding="0" cellspacing="0" style="max-width:600px;margin:24px auto;border-radius:12px;border:1px solid #1f2937;background:#081016;overflow:hidden;">
|
||||
<tr>
|
||||
<td style="padding:20px 24px;border-bottom:1px solid #111827;background:#071018;">
|
||||
<h2 style="margin:0;font-size:18px;color:#fff;font-weight:600;">{{ config('app.name', 'Skinbase') }}</h2>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding:24px;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0));">
|
||||
<p style="margin:0 0 12px;color:#cbd5e1;">Welcome to {{ config('app.name', 'Skinbase') }} — thanks for signing up.</p>
|
||||
<p style="margin:0 0 18px;color:#cbd5e1;">Please verify your email to continue account setup.</p>
|
||||
|
||||
<div style="text-align:center;margin:20px 0;">
|
||||
<a href="{{ $verificationUrl }}" style="display:inline-block;padding:12px 20px;background:#0ea5a9;color:#06121a;text-decoration:none;border-radius:8px;font-weight:600;">Verify Email</a>
|
||||
</div>
|
||||
|
||||
<p style="margin:0 0 8px;color:#9fb0c8;font-size:13px;">This link expires in {{ $expiresInHours }} hours.</p>
|
||||
<p style="margin:12px 0 0;color:#9fb0c8;font-size:13px;">Need help? Contact support: <a href="{{ $supportUrl }}" style="color:#8bd0d3;">{{ $supportUrl }}</a></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding:12px 24px;background:#040607;border-top:1px solid #0e1113;text-align:center;color:#6b7280;font-size:12px;">© {{ date('Y') }} {{ config('app.name', 'Skinbase') }}. All rights reserved.</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,82 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||||
<style>
|
||||
body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial; color:#0f172a; }
|
||||
.container { max-width:700px; margin:24px auto; background:#ffffff; border-radius:8px; padding:20px; box-shadow:0 6px 18px rgba(2,6,23,0.08); }
|
||||
.brand { display:flex; align-items:center; gap:12px; }
|
||||
.brand img { height:40px; }
|
||||
.title { margin-top:16px; font-size:20px; font-weight:700; color:#0b1220; }
|
||||
.meta { margin-top:8px; color:#475569; font-size:13px; }
|
||||
.section { margin-top:18px; }
|
||||
.label { font-weight:600; color:#0b1220; font-size:13px; }
|
||||
.value { margin-top:6px; color:#0f172a; }
|
||||
.footer { margin-top:22px; color:#64748b; font-size:12px; }
|
||||
a { color:#0ea5e9; text-decoration:none; }
|
||||
.pill { display:inline-block; padding:4px 8px; border-radius:999px; background:#f1f5f9; color:#0b1220; font-size:12px; }
|
||||
pre { white-space:pre-wrap; font-family:inherit; font-size:13px; color:#0f172a; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<div class="brand">
|
||||
<img src="https://cdn.skinbase.org/images/skinbase_logo_64.webp" alt="Skinbase">
|
||||
<div>
|
||||
<div style="font-weight:700;">Skinbase</div>
|
||||
<div style="font-size:12px;color:#64748b;">New staff application / contact form submission</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="title">New {{ $topicLabel }}: {{ $application->name }}</div>
|
||||
|
||||
<div class="meta">Received {{ $application->created_at->toDayDateTimeString() }}</div>
|
||||
|
||||
<div class="section">
|
||||
<div class="label">Details</div>
|
||||
<div class="value">
|
||||
<div><span class="pill">Topic</span> {{ $topicLabel }}</div>
|
||||
<div><strong>Name:</strong> {{ $application->name }}</div>
|
||||
<div><strong>Email:</strong> <a href="mailto:{{ $application->email }}">{{ $application->email }}</a></div>
|
||||
@if($application->role)<div><strong>Role:</strong> {{ $application->role }}</div>@endif
|
||||
@if($application->portfolio)<div><strong>Portfolio:</strong> <a href="{{ $application->portfolio }}">{{ $application->portfolio }}</a></div>@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@if($application->topic === 'bug')
|
||||
<div class="section">
|
||||
<div class="label">Bug report</div>
|
||||
<div class="value">
|
||||
@if($application->payload['data']['affected_url'] ?? false)
|
||||
<div><strong>Affected URL:</strong> <a href="{{ $application->payload['data']['affected_url'] }}">{{ $application->payload['data']['affected_url'] }}</a></div>
|
||||
@endif
|
||||
@if($application->payload['data']['steps'] ?? false)
|
||||
<div style="margin-top:8px"><strong>Steps to reproduce:</strong>
|
||||
<pre>{{ $application->payload['data']['steps'] }}</pre>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<div class="section">
|
||||
<div class="label">Message</div>
|
||||
<div class="value"><pre>{{ $application->message }}</pre></div>
|
||||
</div>
|
||||
|
||||
<div class="section">
|
||||
<div class="label">Technical</div>
|
||||
<div class="value">
|
||||
<div><strong>IP:</strong> {{ $application->ip }}</div>
|
||||
<div style="margin-top:6px"><strong>User agent:</strong> {{ $application->user_agent }}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
<div>If you prefer to manage submissions in the admin UI, open: <a href="{{ url('/admin/applications') }}">/admin/applications</a></div>
|
||||
<div style="margin-top:8px">— Skinbase</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,22 @@
|
||||
New {{ $topicLabel }}: {{ $application->name }}
|
||||
|
||||
Received: {{ $application->created_at->toDayDateTimeString() }}
|
||||
|
||||
Topic: {{ $topicLabel }}
|
||||
Name: {{ $application->name }}
|
||||
Email: {{ $application->email }}
|
||||
@if($application->role)
|
||||
Role: {{ $application->role }}
|
||||
@endif
|
||||
@if($application->portfolio)
|
||||
Portfolio: {{ $application->portfolio }}
|
||||
@endif
|
||||
|
||||
Message:
|
||||
{{ $application->message }}
|
||||
|
||||
Technical:
|
||||
IP: {{ $application->ip }}
|
||||
User agent: {{ $application->user_agent }}
|
||||
|
||||
Manage submissions: {{ url('/admin/applications') }}
|
||||
Reference in New Issue
Block a user