<?php

# заголовок, получение параметров
define('TITLE', 'Активация'); $params = PARAMS;

# активация аккаунта
if (isset($params['param']) && isset($params['token'])) { 

# фильтрация параметров, установка данных
$id = $FUNC->filter($params['param'], 'int'); // ид
$token = $FUNC->filter($params['token'], 'var'); // токен

# процедура активации, проверка аккаунта
if (db_exist($DB, 'tokens', 'id', array('time;>' => time(), 'token' => $token, 'type' => 'active', 
'user' => $id)) && db_exist($DB, 'users', 'id', array('id' => $id, 'active' => 'no'))) {

# активация, обновление в базе данных
db_delete($DB, 'tokens', array('token' => $token, 'type' => 'active', 'user' => $id)); // удаление токена
db_update($DB, 'users', array('active' => 'yes'), array ('id' => $id)); // активация аккаунта

# данные авторизации
if (!defined('USER')) { // проверка авторизации
$hash = $FUNC->random(20); // случайная строка
$num = $FUNC->random(9, true); // случайный номер
$browser = $FUNC->browser(AGENT); // браузер
$device = $FUNC->device(AGENT); // используемое устройство
$os = $FUNC->os(AGENT); // операционная система
$ip = $FUNC->ip(IP); // ip - адрес клиента
$auth = $hash .'z'. $num; // данные авторизации
$FUNC->sess('auth', $auth); // запись авторизации
db_delete($DB, 'auths', array('user' => $id)); // чистка авторизаций

# запись авторизации в базу данных
db_create($DB, 'auths', array('browser' => $browser, 'device' => $device, 'hash' => $hash, 'ip' => $ip, 'num' => $num, 'os' => $os, 'user' => $id)); }

# переадресация в игру
$FUNC->go('/garden'); } }

?>