101 lines
4.6 KiB
PHP
101 lines
4.6 KiB
PHP
<?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 'functions.php';
|
||
|
||
$dirname = "i/presents/";
|
||
$images = glob($dirname . "*.png");
|
||
|
||
if (!empty($_POST['present'])) {
|
||
if (empty($_POST['to_login'])) return 'Получатель не указан!';
|
||
if ($_POST['to_login'] == $user['login']) return 'Очень щедро - дарить что-то самому себе! ;)';
|
||
if ($_POST['flower']) {
|
||
$to = db::c()->query('SELECT `id`,`login`,`room` FROM `users` WHERE `login` = ?i', $_POST['to_login'])->fetch_assoc();
|
||
|
||
if ($_POST['from'] == 1) $from = 'Аноним';
|
||
elseif ($_POST['from'] == 2 && $user['klan']) $from = ' клана ' . $user['klan'];
|
||
else $from = $user['login'];
|
||
|
||
db::c()->query('UPDATE `inventory` SET `owner` = ?i, `present` = "?s", `letter` = "?s" WHERE `present` = "?s" AND `id` = "?s" AND `owner` = ?i AND `dressed` = 0 AND `setsale` = 0', $to['id'], $from, $_POST['podarok2'], null, $_POST['flower'], $_SESSION['uid']);
|
||
$res = db::c()->query('SELECT `id`,`name`,`duration`,`maxdur` FROM `inventory` WHERE `id` = ?i', $_POST['flower'])->fetch_assoc();
|
||
|
||
$deloText = "{$user['login']} купил подарок «%PodarokName%» за %PodarokCost% кр. и подарил его персонажу {$_POST['to_login']}";
|
||
addToDelo($deloText);
|
||
$telegraphText = "Вам пришёл подарок \"" . $res['name'] . "\" от " . $from . "!";
|
||
db::c()->query('INSERT INTO `telegraph` (receiver, text) VALUES (?i,"?s")', $to['id'], $telegraphText)->fetch_assoc();
|
||
|
||
err('Подарок удачно доставлен к ' . $_POST['to_login']);
|
||
|
||
}
|
||
}
|
||
|
||
?>
|
||
<!DOCTYPE html>
|
||
<html>
|
||
<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>
|
||
</head>
|
||
<body>
|
||
<h1>Магазин подарков</h1>
|
||
<div>
|
||
Выберите подарок:<br>
|
||
<?php foreach ($images as $image): ?>
|
||
<label class="present">
|
||
<input type="radio" name="present" value="<?= $image ?>">
|
||
<img src="<?= $image ?>" alt="">
|
||
</label>
|
||
<?php endforeach; ?>
|
||
</div>
|
||
<div>
|
||
<form method="post">
|
||
<input type=hidden name=present value=1>
|
||
Вы можете сделать подарок любому персонажу. Ваш подарок будет
|
||
отображаться в информации о персонаже.<br><br>
|
||
|
||
<input name=to_login placeholder="Имя получателя"><br>
|
||
<textarea name=podarok2 rows=6 cols=80
|
||
placeholder="Текст сопроводительной записки (в информации о персонаже не отображается)"></textarea><br>
|
||
<br>Выберите, от чьего имени подарок:<br>
|
||
<label><input type=radio name=from value=0 checked> <?= $user['login'] ?></label><br>
|
||
<label><input type=radio name=from value=1> анонимно</label><br>
|
||
<label><input type=radio name=from value=2> от имени клана</label><br>
|
||
<br>Долговечность подарка (5кр в день):<br>
|
||
<input name="days" placeholder="Количество дней"><br>
|
||
<br><button>Подарить</button>
|
||
</form>
|
||
</div>
|
||
</body>
|
||
</html>
|