37 lines
1.3 KiB
PHP
37 lines
1.3 KiB
PHP
<?php
|
|
$gif_files = glob($_SERVER['DOCUMENT_ROOT'] . '/assets/gifs/*.gif');
|
|
$gif_files = array_values($gif_files);
|
|
|
|
// If a specific GIF was requested via ?id=, serve its embed
|
|
if (isset($_GET['id'])) {
|
|
$id = (int)$_GET['id'];
|
|
$gif = isset($gif_files[$id])
|
|
? '/assets/gifs/' . basename($gif_files[$id])
|
|
: '';
|
|
|
|
$base_url = 'https://sistav.com';
|
|
$gif_url = $base_url . $gif;
|
|
?>
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta property="og:type" content="website">
|
|
<meta property="og:url" content="<?= $base_url ?>/gif?id=<?= $id ?>">
|
|
<meta property="og:image" content="<?= htmlspecialchars($gif_url) ?>">
|
|
<meta property="og:image:type" content="image/gif">
|
|
<meta name="twitter:card" content="summary_large_image">
|
|
<meta name="twitter:image" content="<?= htmlspecialchars($gif_url) ?>">
|
|
<meta http-equiv="refresh" content="0; url=/">
|
|
</head>
|
|
<body></body>
|
|
</html>
|
|
<?php
|
|
exit;
|
|
}
|
|
|
|
// No ?id= — pick a random GIF and redirect to its unique URL
|
|
// The random token makes the URL unique so Discord won't serve a cached embed
|
|
$id = array_rand($gif_files);
|
|
$token = bin2hex(random_bytes(4)); // e.g. ?id=3&t=a1b2c3d4
|
|
header("Location: /gif?id={$id}&t={$token}");
|
|
exit;
|