<?php /* @var $u User */ use Core\Config; use Core\Db; use Model\EkrExchangeRates; use User\UserIp; if (!defined('GAME')) { die(); } ?> <script> let elem = document.getElementById('se-pre-con'); elem.parentNode.removeChild(elem); function openMod(title, dat) { const d = document.getElementById('useMagic'); if (!d) { return; } document.getElementById('modtitle').innerHTML = '<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td valign="top">' + title + '</td><td width="30" valign="top"><div align="right"><a title="Закрыть окно" onClick="closeMod(); return false;" href="#">x</a></div></td></tr></table>'; document.getElementById('moddata').innerHTML = dat; d.style.display = ''; } function closeMod() { const d = document.getElementById('useMagic'); if (!d) { return; } document.getElementById('modtitle').innerHTML = ''; document.getElementById('moddata').innerHTML = ''; d.style.display = 'none'; } </script> <script src='<?= Config::img() ?>/js/commoninf.js'></script> <style> .modpow { background-color: #ddd5bf; border: solid 1px #776f59; position: absolute; left: 50px; top: 186px; } .mt { background-color: #b1a993; padding: 5px 10px; } .md { padding: 10px; } </style> <div id="useMagic" style="display:none;" class="modpow"> <div class="mt" id="modtitle"></div> <div class="md" id="moddata"></div> </div> <div style="text-align: right;"> <INPUT TYPE="button" onclick="location.href='main.php?alhp=1';" class="btn" value="Обновить" title="Обновить"> <INPUT TYPE="button" onclick="location.href='main.php';" class="btn" value="Вернуться" title="Вернуться"> </div> <?php $exchangeToday = new EkrExchangeRates(); $ba = Db::getRow('select * from bank_alh where uid = ?', [$u->info['id']]); if (isset($ba['id'])) { ?> <table style="width: 320px;"> <tr> <td> <h4>На алхимических счетах:</h4> <b><?= $ba['ekr'] ?></b> ЕКР <hr/> <?php $ucur = round($exchangeToday->oneEkrInUSD() / 100 * (100 - $ba['procent']), 2); ?> Персональный курс: <b><?= $ucur ?></b> $ = 1 Еврокредит. <hr/> <form method="post" action="/main.php?alhp=1"> <?php if (isset($_POST['buy_ekr'])) { $uba = Db::getRow('select * from users where login = ? and banned = 0', [$_POST['buy_ekr']]); $uba['uid'] = $uba['id']; if (isset($uba['id'])) { echo 'Покупатель: ' . $u->getLogin($uba['uid']) . '<br>'; } else { echo '<span style="color: red;">Персонаж заблокирован, либо не найден.</span><hr>'; unset($_POST['buy_ekr']); } echo '<hr>'; if (isset($uba['id'])) { $_POST['buy4ekr'] = round($_POST['buy4ekr'], 2); $bns = [ [0, 0, 0], [10, 1, 0], [50, 2, 0], [100, 3, 0], [200, 4, 0], [300, 5, 0], [400, 6, 0], [500, 7, 0], [600, 8, 0], [700, 9, 0], [800, 10, 0], [900, 11, 0], [1000, 13, 1], [1100, 15, 2], [1200, 17, 3], [1300, 19, 4], [1500, 21, 5], [1700, 23, 6], [2000, 25, 7], [2500, 27, 8], [3000, 30, 9], ]; $bns2 = [ [0, 0], [10, 10], [20, 10], [30, 10], [40, 10], [50, 10], [60, 10], [70, 10], [80, 10], [90, 10], [100, 20], ]; $ball = Db::getValue('select sum(ekr) from pay_operation where uid = ? and good > 0', [$uba['id']]); $i = 0; while ($i < count($bns)) { if (isset($bns[$i][0]) && $ball > $bns[$i][0]) { $b1 = $i; } $i++; } $i = 0; while ($i < count($bns2)) { if (isset($bns2[$i][0]) && $_POST['buy4ekr'] >= $bns2[$i][0]) { $b2 = $i; } $i++; } //Бонус опытовый, первичный и накопительный $out_ekr = $_POST['buy4ekr']; $out_ekr0 = $_POST['buy4ekr']; // $out_ekr += round($out_ekr0 / 100 * $bns[$b1][1], 2); $i = 0; while ($i < count($bns2)) { if (isset($bns2[$i][0]) && $out_ekr >= $bns2[$i][0]) { $b2_2 = $i; } $i++; } $out_ekr += round($out_ekr0 / 100 * $bns2[$b2_2][1], 2); if ($ball == 0) { $out_ekr += round($out_ekr0 / 100 * 20, 2); } if (isset($_POST['buy4ekr']) && $_POST['buy4ekr'] < 0.01) { echo '<span style="color: red;">Минимальная сумма продажи: 0.01 екр.</span><hr>'; unset($_POST['buy4ekr']); } elseif ($_POST['buy4ekr'] > $ba['ekr']) { echo '<span style="color: red;">Недостаточно средств на счете</span><hr>'; unset($_POST['buy4ekr']); } if (isset($_POST['buygoodluck'])) { echo '<script>alert("Продажа на сумму ' . $_POST['buy4ekr'] . ' екр. была совершена успешно!");location.href="main.php?alhp=1";</script>'; $ba['ekr'] -= $_POST['buy4ekr']; $ba['USD'] += round($_POST['buy4ekr'] * $ucur, 2); Db::sql('update bank_alh set ekr = ?, USD = ? where id = ?', [$ba['ekr'], $ba['USD'], $ba['id']]); $u->addEkr($out_ekr, $uba['id']); $money = round($_POST['buy4ekr'] * $exchangeToday->oneEkrInRUB(), 2); $money = round($money / 100 * (100 - $ba['procent']), 2); $user = Db::getRow('select id, login, city, sex, room, host_reg from users where id = ?', [$uba['uid']]); Db::sql('insert into pay_operation (uid, ekr, time, good, var, ref, ref2) values (?,?,unix_timestamp(),unix_timestamp(),?,?,0)', [$uba['id'], $_POST['buy4ekr'], 'buy_ekr_alh' . $u->info['id'], $uba['host_reg']]); $r = '<span class=date>' . date( 'd.m.Y H:i' ) . '</span> <img src="' . Config::img() . '/i/align/align50.gif" alt="Алхимик"><u> Алхимик <b>' . $u->info['login'] . '</b></u> сообщает: '; if ($user['sex'] == 1) { $r .= 'Уважаемая'; } else { $r .= 'Уважаемый'; } $bnss = ''; if (($out_ekr - round((int)$_POST['buy4ekr'], 2)) > 0) { $bnss = ' (+' . ($out_ekr - round((int)$_POST['buy4ekr'], 2)) . ' ЕКР бонус!)'; } $r .= ' <b>' . $user['login'] . '</b>, вам зачислено ' . $_POST['buy4ekr'] . ' ЕКР' . $bnss . '. Благодарим Вас за покупку!'; $cmsg = new ChatMessage(); $cmsg->setCity($user['city']); $cmsg->setRoom($user['room']); $cmsg->setTo($user['login']); $cmsg->setType(5); $cmsg->setText($r); (new Chat())->sendMsg($cmsg); $text_msg = 'Алхимик <b>' . $u->info['login'] . '</b> совершил продажу <b>' . $_POST['buy4ekr'] . '</b> ЕКР. (скидка ' . $ba['procent'] . '% , задолжность ' . $ba['USD'] . '$). Покупатель: ' . $u->getLogin($uba['uid']) . '.</b>.'; $balance = Db::getValue('select sum(money) from balance_money where cancel = 0'); $balance += $money; Db::sql('insert into balance_money (time, money, ip, comment2, balance, cancel) values (unix_timestamp(),?,?,?,?,unix_timestamp())', [$money, UserIp::get(), $text_msg, $balance]); //Рейтинг по вкладам $ub = []; $ui = []; $sp = Db::getRows('select * from pay_operation where good > 0 order by id desc'); foreach ($sp as $pl) { if (empty($ub[$pl['uid']])) { $ui[] = $pl['uid']; } $ub[$pl['uid']][date('d.m.Y', $pl['good'])] = $pl['ekr']; } $i = 0; while ($i < count($ui)) { if (!isset($ui[$i])) { $i++; continue; } $j = 1; $k = 0; $nj = 0; while ($j <= 1000) { $dt = date('d.m.Y', time() - (86400 * $j)); if (isset($ub[$ui[$i]][$dt])) { $k++; $nj = 0; } elseif ($j > 0 && $nj >= 6) { $j = 1000; } else { $nj++; } $j++; } Db::sql('replace into users_paybonus (id, level) values (?,?)', [$ui[$i], $k]); $i++; } } else { echo 'Сумма екр.:'; if (!isset($_POST['buy4ekr'])) { echo ' <input name="buy4ekr" style="width:50px;" value="0.00" /> <input class="btn btn-danger" value="Далее" type="submit"><br>'; } else { echo ' <b>' . round((int)$_POST['buy4ekr'], 2) . '</b> ЕКР + <b>' . ($out_ekr - round((int)$_POST['buy4ekr'], 2)) . '</b> ЕКР бонус. <input name="buy4ekr" type="hidden" value="' . $_POST['buy4ekr'] . '">'; echo ' <br><br><input type="submit" name="buygoodluck" class="btn btn-success" value="Совершить продажу">'; } } } } if (isset($_POST['buy_ekr'])) { ?> <input name="buy_ekr" type="hidden" value="<?= $_POST['buy_ekr'] ?>"/> <?php } else { ?>Перести екр. персонажу: <input name="buy_ekr" style="width:50px;" value="<?= $_POST['buy_ekr'] ?>"/> <input class="btn btn-danger" value="Далее" type="submit"/> <?php } ?> </form> </td> </tr> </table> <?php } echo "<br><h4><div align=left>Необходимые средства в работе алхимика</div></h4>"; $p['m1'] = 1; $srok = [15 => '15 минут', 30 => '30 минут', 60 => 'один час', 180 => 'три часа', 360 => 'шесть часов', 720 => 'двенадцать часов', 1440 => 'одни сутки', 4320 => 'трое суток']; if (isset($_GET['usemod']) && isset($_POST['usem1'])) { require_once('moder/usem1.php'); } if (isset($_POST['tologin'], $_POST['message'])) { $cmsg = new ChatMessage(); $cmsg->setRoom(1); $cmsg->setTo($_POST['tologin']); $cmsg->setText( '<span style="color: darkblue; ">Сообщение телеграфом от </span> <b>' . $u->info['login'] . '</b>: ' . $_POST['message'] ); $cmsg->setType(6); (new Chat())->sendMsg($cmsg); } ?> <table> <a href="#" onClick="openMod('<b>Заклятие молчания</b>','<form action=\'main.php?<?= 'alhp&usemod=' . PassGen::intCode(); ?>\' method=\'post\'>Логин персонажа: <input type=\'text\' style=\'width:144px;\' id=\'logingo\' name=\'logingo\'><br>Время заклятия: <select style=\'margin-left:2px;\' name=\'time\'><option value=\'1440\'>Сутки</option></select> <input type=\'submit\' name=\'usem1\' value=\'Исп-ть\'></form>');"><img src="<?= Config::img() ?>/i/items/sleep.gif" title="Заклятие молчания"/></a> <br><h4>Телеграф</h4> <form method=post style="margin:5px;"> Логин персонажа <input type=text size=20 name="tologin"> сообщение <input type=text size=80 name="message"> <input type=submit class="btn btn-success" value="отправить"> </form> <?php echo '<br><h2>Список реальщиков:</h2><br>'; $sp = Db::getRows('select * from pay_operation where good > 0 group by uid'); foreach ($sp as $pl) { $online = Db::getValue('select online from users where id = ?', [$pl['uid']]); $lg = $u->getLogin($pl['uid']); if ($online > time() - 240) { $lg = '<span style="color: green;">' . $lg . '</span>'; } else { $lg .= ' (был тут ' . date('d.m.Y H:i', $online) . ')'; } if ($u->info['admin'] > 0) { $sum = Db::getValue('select sum(ekr) from pay_operation where good > 0 and uid = ?', [$pl['uid']]); echo $lg . ' - ' . $sum . ' екр.<br>'; } else { echo $lg . '<br>'; } }