101 lines
4.1 KiB
PHP
Executable file
101 lines
4.1 KiB
PHP
Executable file
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
|
<title>Verify Code - Scan.fyi</title>
|
|
<script src="https://cdn.tailwindcss.com"></script>
|
|
</head>
|
|
<body class="bg-gradient-to-br from-blue-50 to-indigo-100 min-h-screen flex items-center justify-center p-4">
|
|
<div class="w-full max-w-md">
|
|
<div class="bg-white rounded-lg shadow-xl p-8">
|
|
<div class="text-center mb-8">
|
|
<h1 class="text-3xl font-bold text-gray-900">Scan.fyi</h1>
|
|
<p class="mt-2 text-sm text-gray-600">Enter Your Verification Code</p>
|
|
</div>
|
|
|
|
@if (session('status'))
|
|
<div class="mb-6 p-4 rounded-lg bg-green-50 border border-green-200">
|
|
<p class="text-sm text-green-800">{{ session('status') }}</p>
|
|
</div>
|
|
@endif
|
|
|
|
@if (session('error'))
|
|
<div class="mb-6 p-4 rounded-lg bg-red-50 border border-red-200">
|
|
<p class="text-sm text-red-800">{{ session('error') }}</p>
|
|
</div>
|
|
@endif
|
|
|
|
<form method="POST" action="{{ route('verify-code') }}">
|
|
@csrf
|
|
|
|
<div class="mb-6">
|
|
<label for="email" class="block text-sm font-medium text-gray-700 mb-2">
|
|
Email Address
|
|
</label>
|
|
<input
|
|
type="email"
|
|
id="email"
|
|
name="email"
|
|
value="{{ old('email') }}"
|
|
required
|
|
autofocus
|
|
class="w-full px-4 py-3 rounded-lg border border-gray-300 focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 transition-colors @error('email') border-red-500 @enderror"
|
|
placeholder="you@example.com"
|
|
>
|
|
@error('email')
|
|
<p class="mt-2 text-sm text-red-600">{{ $message }}</p>
|
|
@enderror
|
|
</div>
|
|
|
|
<div class="mb-6">
|
|
<label for="code" class="block text-sm font-medium text-gray-700 mb-2">
|
|
Verification Code
|
|
</label>
|
|
<input
|
|
type="text"
|
|
id="code"
|
|
name="code"
|
|
value="{{ old('code') }}"
|
|
required
|
|
pattern="[0-9]{6}"
|
|
maxlength="6"
|
|
inputmode="numeric"
|
|
class="w-full px-4 py-3 rounded-lg border border-gray-300 focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 transition-colors text-center text-2xl font-mono tracking-widest @error('code') border-red-500 @enderror"
|
|
placeholder="000000"
|
|
>
|
|
@error('code')
|
|
<p class="mt-2 text-sm text-red-600">{{ $message }}</p>
|
|
@enderror
|
|
<p class="mt-2 text-xs text-gray-500 text-center">
|
|
Enter the 6-digit code from your email
|
|
</p>
|
|
</div>
|
|
|
|
<button
|
|
type="submit"
|
|
class="w-full bg-indigo-600 hover:bg-indigo-700 text-white font-semibold py-3 px-4 rounded-lg transition-colors focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2"
|
|
>
|
|
Verify Code
|
|
</button>
|
|
</form>
|
|
|
|
<div class="mt-6 text-center">
|
|
<a
|
|
href="{{ route('login') }}"
|
|
class="text-sm text-indigo-600 hover:text-indigo-800 font-medium"
|
|
>
|
|
Back to login
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="mt-6 text-center">
|
|
<p class="text-xs text-gray-600">
|
|
Codes expire after 15 minutes
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|