} $VKCheckSum = md5(VK_API_ID . "_" . $userId . "_" . VK_API_SECRET); if (!in_array(getRealIP(), $allowIPForSystemCommand) && $authKey != $VKCheckSum) { $actionResult = new ErrorPoint(ErrorPoint::CODE_BAD_MD5, "WFT!: " . getRealIP(), ErrorPoint::TYPE_USER); } if ($runningOn != 2 && $_SERVER['SERVER_ADDR'] != "109.234.155.18" && isset($_SERVER['HTTP_REFERER']) && strpos($_SERVER['HTTP_REFERER'], "vkontakte.ru") === false) { $actionResult = new ErrorPoint(ErrorPoint::CODE_BAD_MD5, "Нарушение изолированной среды", ErrorPoint::TYPE_USER); } $parameters = onActionParameters($_POST["params"]); if (isset($_POST["statistic"])) { $statistic = onActionParameters($_POST["statistic"]); } GlobalParameters::setCommand($command); GlobalParameters::setGroupId($groupId); UserParameters::setUserId($userId); UserParameters::setAuthKey($authKey); if (SQL::getInstance()->connect_error) { $actionResult = new ErrorPoint(ErrorPoint::CODE_SQL, "Невозможно подключиться (" . SQL::getInstance()->connect_error . ")", ErrorPoint::TYPE_SYSTEM); break; } track_stats(); // Отслеживаем производительность if (!$actionResult instanceof ErrorPoint) { switch ($command) { case COMMAND_PING: $controller = new PingController($parameters); break; case COMMAND_FRIEND_INFO: $controller = new FreeFriendsController($parameters); break; case COMMAND_FRIEND_TEAM: