<?php
/**
 * Created by PhpStorm.
 * User: Lopar
 * Date: 15.01.2019
 * Time: 14:51
 */

/*
 * Файл в котором буду аккумулироваться покупка и отправка подарков и сувениров, которые не будут являться предметами,
 * а просто записями в базе и просто будут отображаться в инвентаре, как неосязаемая сущность со сроком годности или
 * без и правом игрока скрыть или удалить любой подаренный подарок.
 *
 */

session_start();
if ($_SESSION['uid'] != 11263) header("Location: index.php");
require_once 'config.php';

$user = db::c()->query('SELECT `login`, `name` AS `ClanName`, u.`money` 
FROM `users` u 
  LEFT JOIN `clans` c ON c.`id` = `klan`
WHERE u.`id` = ?i', $_SESSION['uid'])->fetch_assoc();

$dirname = "i/presents/";
$images = glob($dirname . "*.png");

if (!empty($_POST['sendAction'])) {
    if (empty($_POST['present'])) {
        $status = "Подарок не выбран!";
        return;
    }
    if (empty($_POST['receiver'])) {
        $status = "Поле «Получатель» не заполнено!";
        return;
    }
    $receiver = db::c()->query('SELECT `id` FROM `users` WHERE `login` = "?s"', $_POST['receiver'])->fetch_assoc();
    if (empty($receiver)) {
        $status = "Получатель {$receiver} не найден в базе!";
        return;
    }
    if (empty($_POST['text'])) $_POST['text'] = null;
    if (empty($_POST['days']) OR $_POST['days'] < 1 OR !is_numeric($_POST['days'])) $_POST['days'] = 1;
    $cost = $_POST['days'] * 5;
    if ($user['money'] < $cost) {
        $status = "Не хватает кредитов на оплату подарка!";
        return;
    }

    if ($_POST['sender'] == 1) $sender = "Анонимный подарок";
    elseif ($_POST['sender'] == 2 && $user['ClanName']) $sender = "Подарок от клана {$user['ClanName']}";
    else $sender = "Подарок от {$user['login']}";

    db::c()->query('UPDATE `users` SET `money` = `money` - ?i WHERE `id` = ?i', $cost, $_SESSION['uid']);
    db::c()->query('INSERT INTO users_presents (owner, img, text, sender, expiration_date) VALUES (?i,"?s","?s","?s",DATE_ADD(CURDATE(),INTERVAL ?i DAY))', $receiver['id'], $_POST['present'], $_POST['text'], $sender, $_POST['days']);

    $telegraphText = "Вам пришёл подарок от {$sender}!";
    db::c()->query('INSERT INTO `telegraph` (receiver, text) VALUES (?i,"?s")', $receiver['id'], $telegraphText);
    $status = "Подарок удачно доставлен к {$_POST['receiver']}! Вы потратили <b>{$cost}</b> кр.";
}
?>
<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="utf-8">
    <link href="css/main.css" rel="stylesheet"/>
    <script src="js/main.js"></script>
    <style>
        label.present > input { /* HIDE RADIO */
            visibility: hidden; /* Makes input not-clickable */
            position: absolute; /* Remove input from document flow */
        }

        label.present > input + img { /* IMAGE STYLES */
            cursor: pointer;
            border: 1px solid transparent;
        }

        label.present > input:checked + img { /* (RADIO CHECKED) IMAGE STYLES */
            border: 1px solid darkred;
            background: lightcoral;
        }
    </style>
    <title></title>
</head>
<body>
<h1>Магазин подарков</h1>
<div class="private"><?php if (!empty($status)) echo $status; ?></div>
Вы можете сделать подарок любому персонажу. Ваш подарок будет
отображаться в информации о персонаже.<br><br>
<div>
    Выберите подарок:<br>
    <form method="post">
        <?php foreach ($images as $image): ?>
            <label class="present">
                <input type="radio" name="present" value="<?= $image ?>">
                <img src="<?= $image ?>" alt="">
            </label>
        <?php endforeach; ?>
        <br><input name="receiver" placeholder="Имя получателя"><br>
        <textarea name="text"
                  rows=6 cols=80
                  placeholder="Текст сопроводительной записки (в информации о персонаже не отображается). Заполнять не обязательно."></textarea><br>
        <br>Выберите, от чьего имени подарок:<br>
        <label><input type=radio name=sender value=0 checked> <?= $user['login'] ?></label><br>
        <label><input type=radio name=sender value=1> анонимно</label><br>
        <?php if (!empty($user['ClanName'])): ?>
            <label><input type=radio name=sender value=2> от имени клана <b><?= $user['ClanName'] ?></b></label><br>
        <?php endif; ?>
        <br>Долговечность подарка (5кр в день):<br>
        <input name="days" placeholder="Количество дней"><br>
        <input type="hidden" name="sendAction" value="1">
        <br>
        <input type="submit" value="Подарить">
    </form>
</div>
</body>
</html>