![Igor Barkov [iwork]](/assets/img/avatar_default.png)
2. shop bying fixes 3. item class code clear 4. moved all gifts to separate file 5. removed artefact upgrade
125 lines
7.2 KiB
PHP
125 lines
7.2 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';
|
||
|
||
?>
|
||
<!DOCTYPE html>
|
||
<html>
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<link href="css/main.css" rel="stylesheet"/>
|
||
<script src="js/main.js"></script>
|
||
</head>
|
||
<body>
|
||
<h1>Магазин подарков</h1>
|
||
|
||
<?php
|
||
if ($_REQUEST['present']) {
|
||
if ($_POST['to_login'] && $_POST['flower']) {
|
||
$to = db::c()->query('SELECT `id`,`login`,`room` FROM `users` WHERE `login` = ?i', $_POST['to_login'])->fetch_assoc();
|
||
if ($_POST['to_login'] == $user['login']) {
|
||
err('Очень щедро - дарить что-то самому себе! ;)');
|
||
} elseif ($to['room'] > 500 && $to['room'] < 561) {
|
||
err('Персонаж в данный момент участвует в турнире в Башне Смерти. Попробуйте позже.');
|
||
} else {
|
||
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();
|
||
$deloTextSender = "Подарен предмет \"" . $res['name'] . "\" id:(cap" . $res['id'] . ") [" . $res['duration'] . "/" . $res['maxdur'] . "] от \"" . $user['login'] . "\" к \"" . $to['login'] . "\"";
|
||
$deloTextReceiver = "Подарен предмет \"" . $res['name'] . "\" id:(cap" . $res['id'] . ") [" . $res['duration'] . "/" . $res['maxdur'] . "] от \"" . $user['login'] . "\" к \"" . $to['login'] . "\"";
|
||
db::c()->query('INSERT INTO `delo`(`author`,`pers`,`text`,`type`,`date`) VALUES (0,?i,"?s",1,?i)', $_SESSION['uid'], $deloTextSender, time());
|
||
db::c()->query('INSERT INTO `delo`(`author`,`pers`,`text`,`type`,`date`) VALUES (0,?i,"?s",1,?i)', $to['id'], $deloTextReceiver, time());
|
||
|
||
$telegraphText = "Вам пришёл подарок \"" . $res['name'] . "\" от " . $from . "!";
|
||
db::c()->query('INSERT INTO `telegraph` (receiver, text) VALUES (?i,"?s")', $to['id'], $telegraphText)->fetch_assoc();
|
||
|
||
err('Подарок удачно доставлен к ' . $_POST['to_login']);
|
||
}
|
||
}
|
||
}
|
||
?>
|
||
<!-- Подарить подарок -->
|
||
<table cellspacing=0 cellpadding=0 width=100% bgcolor=#e0e0e2>
|
||
<td>
|
||
<form method="post">
|
||
<input type=hidden name=present value=1>
|
||
Вы можете сделать подарок дорогому человеку. Ваш подарок будет
|
||
отображаться в информации о персонаже.
|
||
<ol>
|
||
<li>Укажите логин персонажа, которому хотите сделать подарок<br>
|
||
<input type=text name=to_login value="" placeholder="Логин">
|
||
<li><input type=text name=podarok2 value="" maxlength=60 size=50
|
||
placeholder="Цель подарка.">
|
||
<li><textarea name=txt rows=6 cols=80
|
||
placeholder="Текст сопроводительной записки (в информации о персонаже не отображается)"></textarea>
|
||
<li>Выберите, от чьего имени подарок:<br>
|
||
<label><input type=radio name=from value=0
|
||
checked> <?= nick::id($user['id'])->full() ?>
|
||
</label><br>
|
||
<label><input type=radio name=from value=1> анонимно</label><br>
|
||
<label><input type=radio name=from value=2> от имени
|
||
клана</label><br>
|
||
<li>Нажмите кнопку <b>Подарить</b> под предметом, который хотите
|
||
преподнести в подарок:<br>
|
||
</ol>
|
||
<input type="hidden" name="flower" id="flower" value="">
|
||
<table class="zebra" width=100% cellspacing="1" cellpadding="2"
|
||
bgcolor="#A5A5A5">
|
||
<?php
|
||
$data = db::c()->query('SELECT `id`,`img` FROM `inventory` WHERE `owner`= ?i
|
||
AND `dressed` = 0
|
||
AND (
|
||
`name` LIKE "?S" OR `name` LIKE "?S" OR `name` LIKE "?S" OR `name` LIKE "?S" OR `name` LIKE "?S" OR
|
||
`name` LIKE "?S" OR `name` LIKE "?S" OR `name` LIKE "?S"
|
||
)
|
||
AND `setsale` = 0 AND `present` = "?s"
|
||
ORDER BY `id` DESC', $_SESSION['uid'], '%Букет%', '%Сувенир%', '%Подарок%', '%Валентинка%', '%Открытка%', 'Ель%', '%Медаль%', '%Статуэтка%', null);
|
||
while ($row = $data->fetch_assoc()) {
|
||
if (!in_array($row['id'], array_keys($_SESSION['flowers']))) {
|
||
$row['count'] = 1;
|
||
?>
|
||
<tr>
|
||
<td align=center style='width:150px'>
|
||
<img src="i/sh/<?= $row['img'] ?>">
|
||
<br><input type=submit
|
||
onClick="document.all['flower'].value="<?= $row['id']; ?>
|
||
value="Подарить">
|
||
</td>
|
||
<td valign=top>
|
||
<?php showitem($row); ?>
|
||
</td>
|
||
</tr>
|
||
<?php
|
||
}
|
||
}
|
||
?>
|
||
</form>
|
||
</td>
|
||
</table>
|
||
|
||
|
||
</body>
|
||
</html>
|