<?php
session_start();
if ($_SESSION['uid'] == null) header("Location: index.php");
include "config.php";
include "functions.php";

if ($user['room'] != 27) {
    header("Location: main.php");
    die();
}
if ($user['battle'] != 0) {
    header('location: fbattle.php');
    die();
}

$changeReceiver = filter_input(INPUT_GET, 'change');
if ($changeReceiver) unset($_SESSION['receiverName']);

$razdelId = filter_input(INPUT_GET, 'razdel');
$_SESSION['receiverName'] = filter_input(INPUT_POST, 'receiverName');
$receiverId = null;
$queryItems = null;

if ($_SESSION['receiverName']) {
    $receiver = db::c()->query('SELECT `id`, `level`, `login` FROM `users` WHERE `login` = "?s"', $_SESSION['receiverName'])->fetch_assoc();
    if (!$receiver['id']) {
        err('Персонажа не существует!');
        unset($_SESSION['receiverName']);
    } elseif ($receiver['level'] < 4) {
        err('Персонажей ниже 4-го уровня не обслуживаем!');
        unset($_SESSION['receiverName']);
    } else {
        $receiverId = $receiver['id'];
        $submit = filter_input(INPUT_POST, 'action');
        $sendItemId = filter_input(INPUT_POST,'item_id');
        $telegraphText = filter_input(INPUT_POST, 'message');

        if ($submit == 'sendMessage' && $telegraphText && $user['money'] >= 1) {

            if ($telegraphText) {
                db::c()->query('UPDATE `users` SET `money` = `money` - 1 WHERE id=?i', $user['id']);
                db::c()->query('INSERT INTO `telegraph` (`receiver`,`text`) VALUES (?i,"?s")', $receiverId, $telegraphText);
                $statusMessage = 'Сообщение отправлено.';
            } else $statusMessage = 'Сообщение было оставлено пустым!';
        }

        if ($submit == 'sendItem' && $sendItemId && $user['money'] >= 1) {
            $res = db::c()->query('SELECT `id`,`name` FROM `inventory` WHERE `owner` = ?i AND `id` = ?i AND `dressed` = 0 AND `setsale` = 0 AND `present` = "?s" AND `artefact` = 0', $_SESSION['uid'], $sendItemId, null)->fetch_assoc();
            if (!$res['id']) {
                $statusMessage = "Предмет не найден в рюкзаке.";
            } else {
                db::c()->query('UPDATE `users` SET `money` = `money` - 1 WHERE id=?i', $user['id']);
                db::c()->query('UPDATE `inventory` SET `owner` = ?i WHERE `id`= ?i AND `owner`= ?i', $receiverId, $sendItemId, $_SESSION['uid']);
                //TODO: Добавить логи и статистику.
                $statusMessage  = 'Предмет "' . $res['name'] . '" передан персонажу ' . $receiverId;
                db::c()->query('INSERT INTO `telegraph` (`receiver`,`text`) VALUES (?i,"?s")', $receiverId, 'Почтовый перевод: '. $res['name'] .' от персонажа ' .$user['login']. '.');
            }
        }
        $queryItems = db::c()->query('SELECT * FROM `inventory` WHERE `owner` = ?i AND `dressed` = 0 AND `setsale` = 0 AND `present` = "?s" AND `artefact` = 0 ORDER BY `update` DESC', $_SESSION['uid'], null);
    }
}
?>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <link href="css/main.css" rel="stylesheet"/>
    <script>
        function leave() {
            top.frames['main'].location = 'city.php?cp'
        }
    </script>
</head>
<body>
<h1>Почта</h1>
<a href=# onclick=leave()> ← выйти на Центральную площадь</a>
<div style="text-align: center;">
    <?php if (isset($statusMessage)) err($statusMessage); ?>
</div>
<legend>Услуги почты платные: 1 кредит.</legend>
<?php if ($_SESSION['receiverName']): ?>
    Получатель: <?= nick::id($receiverId)->full() ?>
    <a href="?change">Сменить</a>
    <table width=100%>
        <tr>
            <td valign=top align=left width=30%>
                <form METHOD=POST>
                    <fieldset>
                        <legend><b>Телеграф</b></legend>
                        Вы можете отправить короткое сообщение любому персонажу, даже если он находится в offline или
                        другом городе.<br/>
                        Услуга платная: <b>1 кр.</b> <br/>
                        <input type="text" name="message" id="message" size="52"
                               placeholder="Сообщение: (Максимум 100 символов)">
                        <input type="hidden" name="action" value="telegraph">
                        <input type="submit" value="Отправить">
                    </fieldset>
                </form>
            </td>
            <td valign=top align=right>
                <table class="zebra" WIDTH=100%">
                    <th colspan="2">Передача предметов</th>
                    <?php while ($row = $queryItems->fetch_assoc()): ?>
                        <tr>
                            <td align=center>
                                <img src="i/sh/<?= $row['img'] ?>"><br>
                                <form method="post">
                                    <input type="hidden" name="action" value="sendItem">
                                    <input type="hidden" name="item_id" value="<?= $row['id'] ?>">
                                    <input type="submit" value="Передать за 1кр.">
                                </form>
                            </td>
                            <td valign=top>
                                <?php showitem($row, '','',true); ?>
                            </td>
                        </tr>
                    <?php endwhile ?>
                    <?php if ($queryItems->getNumRows() == 0): ?>
                        <tr>
                            <td align=center bgcolor=#C7C7C7>Нечего передавать...</td>
                        </tr>
                    <?php endif ?>
                </table>
            </td>
        </tr>
    </table>
<?php else: ?>
    <form method="post">
        <input name='receiverName' placeholder="Логин получателя"> <input type=submit value='Применить'>
    </form>
<?php endif ?>
</BODY>
</HTML>