143 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			143 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | ||
| 
 | ||
| require_once __DIR__ . '/lib/_index.php';
 | ||
| 
 | ||
| $code = 500;
 | ||
| 
 | ||
| if (isset($_GET['code'])) {
 | ||
|     $code = (int) $_GET['code'];
 | ||
| }
 | ||
| 
 | ||
| http_response_code($code);
 | ||
| 
 | ||
| $msg = '🪐 Unknown error! Something went wrong in the fabric of spacetime.';
 | ||
| $action = 'Stabilize systems';
 | ||
| 
 | ||
| $dest = $_SERVER['REQUEST_URI'] ?? '/';
 | ||
| 
 | ||
| 
 | ||
| switch ($code) {
 | ||
|     case 400:
 | ||
|         $msg = '🛰️ Bad request! Your signal got scrambled mid-transmission—packet lost in space.';
 | ||
|         $action = 'Resend request';
 | ||
|         break;
 | ||
| 
 | ||
|     case 401:
 | ||
|         $msg = '🔒 Unauthorized! You need proper credentials to dock with this system.';
 | ||
|         $action = 'Initiate login';
 | ||
|         $dest = '/login';
 | ||
|         break;
 | ||
| 
 | ||
|     case 403:
 | ||
|         $msg = '🚫 Forbidden! This space sector is read-only for your clearance level.';
 | ||
|         $action = 'Return to ship';
 | ||
|         $dest = '/';
 | ||
|         break;
 | ||
| 
 | ||
|     case 404:
 | ||
|         $msg = '🛸 Page not found! It might’ve been abducted or deleted by rogue AIs.';
 | ||
|         $action = 'Beam me back';
 | ||
|         $dest = '/';
 | ||
|         break;
 | ||
| 
 | ||
|     case 500:
 | ||
|         $msg = '💥 System failure! The mainframe just had a meltdown and is crying in binary 😢 (01001100...).';
 | ||
|         $action = 'Reboot core';
 | ||
|         break;
 | ||
| 
 | ||
|     case 501:
 | ||
|         $msg = '🧪 Not implemented! This function is still in alpha testing on Mars.';
 | ||
|         $action = 'Go back safely';
 | ||
|         break;
 | ||
| 
 | ||
|     case 502:
 | ||
|         $msg = '🌐 Bad gateway! The relay between galaxies misrouted your request.';
 | ||
|         $action = 'Retry transmission';
 | ||
|         break;
 | ||
| 
 | ||
|     case 503:
 | ||
|         $msg = '☕ Offline! Our servers are recharging on the dark side of the moon.';
 | ||
|         $action = 'Check back soon';
 | ||
|         break;
 | ||
| }
 | ||
| 
 | ||
| ?><!DOCTYPE html>
 | ||
| <html lang="en">
 | ||
| 
 | ||
| <head>
 | ||
|     <meta charset="UTF-8">
 | ||
|     <meta name="viewport" content="width=device-width, initial-scale=1.0">
 | ||
| 
 | ||
|     <link rel="shortcut icon" href="/favicon.svg" type="image/x-icon">
 | ||
| 
 | ||
|     <title>Oops!</title>
 | ||
| 
 | ||
|     <style>
 | ||
|         <?= default_styles() ?>
 | ||
|         <?= common_styles() ?>
 | ||
| 
 | ||
|         body {
 | ||
|             background: radial-gradient(ellipse at center,
 | ||
|                     #1e1e2f 0%,
 | ||
|                     #0f0f1a 100%);
 | ||
|         }
 | ||
| 
 | ||
|         main {
 | ||
|             display: flex;
 | ||
|             flex-direction: column;
 | ||
|             justify-content: center;
 | ||
|             align-items: center;
 | ||
|             min-height: 80vh;
 | ||
|             color: white;
 | ||
|             text-align: center;
 | ||
|             font-family: "Inter", sans-serif;
 | ||
|             overflow: hidden;
 | ||
|         }
 | ||
| 
 | ||
|         h1 {
 | ||
|             font-size: 6rem;
 | ||
|             margin: 0;
 | ||
|             background: linear-gradient(90deg, #ff0066, #00ffff);
 | ||
|             -webkit-background-clip: text;
 | ||
|             -webkit-text-fill-color: transparent;
 | ||
|             animation: glitch 2s infinite;
 | ||
|         }
 | ||
| 
 | ||
|         p {
 | ||
|             font-size: 1.25rem;
 | ||
|             margin: 1rem 0 2rem;
 | ||
|             color: #ccc;
 | ||
|             max-width: 600px;
 | ||
|         }
 | ||
| 
 | ||
|         .btn {
 | ||
|             text-decoration: none;
 | ||
|             background: #00ffff;
 | ||
|             border: none;
 | ||
|             padding: 0.75rem 1.5rem;
 | ||
|             border-radius: 999px;
 | ||
|             font-size: 1rem;
 | ||
|             color: #1e1e2f;
 | ||
|             cursor: pointer;
 | ||
|             transition: background 0.3s ease;
 | ||
|         }
 | ||
| 
 | ||
|         .btn:hover {
 | ||
|             background: #ff0066;
 | ||
|             color: white;
 | ||
|         }
 | ||
|     </style>
 | ||
| </head>
 | ||
| 
 | ||
| <body>
 | ||
|     <main>
 | ||
|         <h1><?= $code ?></h1>
 | ||
| 
 | ||
|         <p><?= $msg ?></p>
 | ||
| 
 | ||
|         <a class="btn" href="<?= $dest ?>"><?= $action ?></a>
 | ||
|     </main>
 | ||
| 
 | ||
| </body>
 | ||
| 
 | ||
| </html>
 |