| Server IP : 202.61.199.114 / Your IP : 216.73.217.139 Web Server : nginx/1.22.1 System : Linux de.arni-solutions.de 6.1.0-49-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64 User : web20 ( 1018) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/arni-solutions.de/web/slots/ |
Upload File : |
<?php
/**
* Terminal-Einstieg für Reel Royale (ohne Login).
* terminal.php?h=<terminal_hash>&v=<view_token>&t=<token>[&go=slf]
* Verifiziert den Token, meldet den Terminal-Gast-Spieler an und leitet in die
* Lobby – oder per go=<ziel> direkt in ein Spiel (Whitelist unten).
*/
require_once __DIR__ . '/includes/bootstrap.php';
require_once __DIR__ . '/includes/terminal.php';
$hash = (string)($_GET['h'] ?? '');
$view = (string)($_GET['v'] ?? '');
$tok = (string)($_GET['t'] ?? '');
if ($hash === '' || $view === '' || !rr_term_verify($hash, $view, $tok)) {
http_response_code(403);
exit('Kein Zugriff.');
}
$row = rr_term_ensure($hash, $view);
$_SESSION['user_id'] = (int)$row['slots_user_id'];
$_SESSION['last_ping_ts'] = time();
$_SESSION['rr_terminal'] = [
'hash' => $hash,
'view' => $view,
'games' => rr_term_selected_games($row),
'back' => '/terminal/terminal.php?h=' . rawurlencode($hash),
];
db()->prepare('UPDATE users SET last_login_at = NOW(), last_seen_at = NOW() WHERE id = ?')->execute([(int)$row['slots_user_id']]);
// Direkteinstieg in ein Spiel (Whitelist) – z.B. Stadt Land Fluss als eigene Terminal-Ansicht.
$targets = ['slf' => 'slf.php'];
$go = (string)($_GET['go'] ?? '');
header('Location: ' . ($targets[$go] ?? 'index.php'));
exit;