Save workspace changes

This commit is contained in:
2026-04-18 17:02:56 +02:00
parent f02ea9a711
commit 87d60af5a9
4220 changed files with 1388603 additions and 1554 deletions

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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') }}