<script language="JavaScript"> var elem = document.getElementById("se-pre-con"); elem.parentNode.removeChild(elem); </script> <?php use Core\Database; if (!defined('GAME_VERSION')) { require_once '_incl_data/autoload.php'; } session_start(); if (!defined('GAME')) { die(); } $u->info['marker'] = 'inv'; if (isset($_SESSION['otdel']) && !isset($_GET['otdel']) && !isset($_GET['paged'])) { $_GET['otdel'] = $_SESSION['otdel']; $_GET['paged'] = $_SESSION['paged']; } elseif (!isset($_GET['otdel']) || ($_GET['otdel'] < 1 && $_GET['otdel'] > 6)) { $_GET['otdel'] = 1; // Если раздел не указан. $_GET['paged'] = $_SESSION['paged'] = 0; } if (isset($_GET['otdel'])) { if (!isset($_GET['paged']) && (isset($_GET['use_pid']) || isset($_GET['sid']) || isset($_GET['oid']) || isset($_GET['usecopr']) || isset($_GET['delcop']))) { $_GET['paged'] = $_SESSION['paged']; // use item and load old paging } elseif (isset($_GET['paged']) && $_GET['paged'] != '') { $_SESSION['paged'] = $_GET['paged']; // Задаем новую страницу. } elseif (isset($_SESSION['paged']) && $_SESSION['paged'] != '' && $_SESSION['otdel'] == $_GET['otdel']) { $_GET['paged'] = $_SESSION['paged']; // Если страница уже имеется в сессии, возвращаем её в текущую. } else { $_GET['paged'] = $_SESSION['paged'] = 0; } } $_SESSION['otdel'] = $_GET['otdel']; // для отладки. if (isset($_GET['delcop'])) { mysql_query( 'DELETE FROM `complects_priem` WHERE `id` = "' . mysql_real_escape_string( $_GET['delcop'] ) . '" AND `uid` = "' . $u->info['id'] . '" LIMIT 1' ); } elseif (isset($_GET['usecopr'])) { $cpr = mysql_fetch_array( mysql_query( 'SELECT * FROM `complects_priem` WHERE `id` = "' . mysql_real_escape_string( $_GET['usecopr'] ) . '" AND `uid` = "' . $u->info['id'] . '" LIMIT 1' ) ); if (isset($cpr['id'])) { $u->info['priems'] = $cpr['priems']; mysql_query( 'UPDATE `stats` SET `priems` = "' . mysql_real_escape_string( $cpr['priems'] ) . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1' ); } } //сохраняем комплект if (isset($_POST['compname'])) { $_POST['compname'] = htmlspecialchars($_POST['compname'], null); $_POST['compname'] = str_replace("'", '', $_POST['compname']); $_POST['compname'] = str_replace('"', '', $_POST['compname']); $ptst = str_replace(' ', '', $_POST['compname']); if ($ptst != '') { //Добавляем комплект $ptst = ''; $sp = mysql_query( 'SELECT `inOdet`,`id` FROM `items_users` WHERE `uid` = "' . $u->info['id'] . '" AND `delete` = "0" AND `inOdet` > 0 AND `inShop` = "0" ORDER BY `inOdet` ASC LIMIT 250' ); while ($pl = mysql_fetch_array($sp)) { $ptst .= $pl['inOdet'] . '=' . $pl['id'] . '|'; } $tcm = mysql_fetch_array( mysql_query( 'SELECT * FROM `save_com` WHERE `uid` = "' . $u->info['id'] . '" AND `name` = "' . mysql_real_escape_string( $_POST['compname'] ) . '" AND `delete` = "0" LIMIT 1' ) ); if (!isset($tcm['id'])) { //добавляем новый комплект $ins = mysql_query( 'INSERT INTO `save_com` (`uid`,`time`,`name`,`val`,`type`) VALUES ("' . $u->info['id'] . '","' . time( ) . '","' . mysql_real_escape_string($_POST['compname']) . '","' . $ptst . '","0")' ); if ($ins) { $u->error = 'Комплект "' . $_POST['compname'] . '" был успешно сохранен'; } else { $u->error = 'Не удалось сохранить комплект по техническим причинам'; } } else { //изменяем существующий $ins = mysql_query( 'UPDATE `save_com` SET `val` = "' . $ptst . '" WHERE `id` = "' . $tcm['id'] . '" LIMIT 1' ); if ($ins) { $u->error = 'Комплект "' . $_POST['compname'] . '" был успешно изменен'; } else { $u->error = 'Не удалось изменить комплект по техническим причинам'; } } unset($ptst, $tcm, $inc); } } elseif (isset($_GET['delc1'])) { $cmpl = mysql_query( 'UPDATE `save_com` SET `delete` = "' . time( ) . '" WHERE `uid` = "' . $u->info['id'] . '" AND `delete` = "0" AND `id` = "' . mysql_real_escape_string( $_GET['delc1'] ) . '" LIMIT 1' ); if ($cmpl) { $u->error = 'Комплект был успешно удален'; } } $filt = '`iu`.`lastUPD` DESC'; if (isset($_GET['boxsort'])) { switch ($_GET['boxsort']) { case'name': $filt = '`im`.`name` ASC'; break; case'cost': $filt = '`im`.`price2` DESC, `im`.`price1` DESC'; break; case'type': $filt = '`im`.`inslot`'; break; } } $pc = 3000; $pg = round((int)@$_GET['paged']); $pxc = $pg * $pc; $nlim = ''; $pgs = mysql_fetch_array( mysql_query( 'SELECT COUNT(`iu`.`id`) FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON `im`.`id` = `iu`.`item_id` WHERE `iu`.`uid`="' . $u->info['id'] . '" AND `iu`.`delete`="0" AND `iu`.`inOdet`="0" AND `iu`.`inShop`="0" AND `im`.`inRazdel`="' . mysql_real_escape_string( $_GET['otdel'] ) . '" ORDER BY ' . $filt . ' LIMIT 1' ) ); $pgs = $pgs[0]; $page_look = ''; $inventorySortBox = '<div id="inventorySortBox"> Сортировка: <br/> <input type="button" onclick="inventoryAjax(\'main.php?inv=1&mAjax=true&boxsort=name&otdel=' . intval( $_GET['otdel'] ) . '\');" class="btn btn-danger" value="Названию" /> <input type="button" onclick="inventoryAjax(\'main.php?inv=1&mAjax=true&boxsort=cost&otdel=' . intval( $_GET['otdel'] ) . '\');" class="btn btn-danger" value="Цене" /> <input type="button" onclick="inventoryAjax(\'main.php?inv=1&mAjax=true&boxsort=type&otdel=' . intval( $_GET['otdel'] ) . '\');" class="btn btn-danger" value="Типу" /> </div>'; if (isset($_SESSION['paged'])) { $page_look = '<!-- PAGED SEE ' . round((int)@$_SESSION['paged']) . '-->'; } else { $page_look = '<!-- PAGED ' . $_SESSION['paged'] . ' -->'; } if ($pgs > $pc) { $nlim = ' LIMIT ' . $pxc . ' , ' . $pc . ''; $page_look .= '<div style="padding:0px;">'; $page_look .= 'Страницы: '; $i = 1; echo '<style>.pgdas { display:inline-block;background-color:#dadada; padding:2px 4px 1px 4px; font-size:12px;} .pgdas1 { display:inline-block;background-color:#a5a5a5; padding:2px 4px 1px 4px; font-size:12px;} .pgdas { background: #dadada;background: -moz-linear-gradient(top, #dadada 50%, #a5a5a5 99%);background: -webkit-gradient(linear, left top, left bottom, color-stop(50%,#dadada), color-stop(99%,#a5a5a5));background: -webkit-linear-gradient(top, #dadada 50%,#a5a5a5 99%);background: -o-linear-gradient(top, #dadada 50%,#a5a5a5 99%);background: -ms-linear-gradient(top, #dadada 50%,#a5a5a5 99%);background: linear-gradient(to bottom, #dadada 50%,#a5a5a5 99%);filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\'#dadada\', endColorstr=\'#a5a5a5\',GradientType=0 ); } .pgdas1 { background: #a5a5a5; } </style>'; while ($i <= ceil($pgs / $pc)) { if ($i - 1 == $pg) { $sep = 1; } else { $sep = ''; } $page_look .= '<a class="pgdas' . $sep . '" href="javascript:void(0);" onclick="inventoryAjax(\'main.php?paged=' . ($i - 1) . '&inv&mAjax=true&otdel=' . round( $_GET['otdel'] ) . '\');">' . $i . '</a> '; $i++; } $page_look .= '</div>'; } $filt = '`lastUPD` DESC'; if (isset($_GET['boxsort'])) { switch ($_GET['boxsort']) { case'name': $filt = '`name` ASC'; break; case'cost': $filt = '`price2` DESC, `price1` DESC'; break; case'type': $filt = '`inslot`'; break; } } $itmAll = $itmAllSee = ''; if (isset($_GET['boxsort']) && $_GET['otdel'] == 5) { if ($_POST['subfilter']) { $itmAll = $u->genInv( 1, '`iu`.`uid`="' . $u->info['id'] . '" AND `iu`.`delete`="0" AND `iu`.`inOdet`="0" AND `iu`.`inShop`="0" AND `name` LIKE "%' . addcslashes( mysql_real_escape_string($_POST['filter']), '%_' ) . '%" ORDER BY `name` ASC' ); } } else { $itmAll = $u->genInv( 1, '`iu`.`uid`="' . $u->info['id'] . '" AND `iu`.`delete`="0" AND `iu`.`inOdet`="0" AND `iu`.`inShop`="0" AND `im`.`inRazdel`="' . mysql_real_escape_string( $_GET['otdel'] ) . '" ORDER BY ' . $filt . '' . $nlim ); } $itmAllSee = '<tr><td align="center" bgcolor="#c7c7c7">ПУСТО</td></tr>'; if ($itmAll[0] > 0) { $itmAllSee = $itmAll[2]; } $clrb = ''; $clrba = ''; if ($u->aves['now'] >= $u->aves['max']) { $clrb = 'color:#BB0000;'; $clrba = ' (У вас перегруз!)'; } $showItems = ' <table width="100%" cellspacing="0" cellpadding="0"> <tr> <td valign="top"> <table width="100%" style="" cellspacing="0" cellpadding="0" bgcolor="#d4d2d2"> <tr> <td style="border-top:4px solid #d4d2d2;border-bottom:4px solid #d4d2d2;" width="20%" ' . (($_GET['otdel'] != 1) ? 'style=""' : 'style=""') . ' align=center bgcolor="' . (($_GET['otdel'] == 1) ? '#a5a5a5' : '') . '"><a href="javascript:void(0);" onclick="inventoryAjax(\'main.php?inv=1&mAjax=true&otdel=1&rn=1.1\');">Обмундирование</a></td> <td style="border-top:4px solid #d4d2d2;border-bottom:4px solid #d4d2d2;" width="20%" ' . (($_GET['otdel'] != 2) ? 'style=""' : 'style=""') . ' align=center bgcolor="' . (($_GET['otdel'] == 2) ? '#a5a5a5' : '') . '"><a href="javascript:void(0);" onclick="inventoryAjax(\'main.php?inv=1&mAjax=true&otdel=2&rn=2.1\');">Заклятия</a></td> <td style="border-top:4px solid #d4d2d2;border-bottom:4px solid #d4d2d2;" width="20%" ' . (($_GET['otdel'] != 3) ? 'style=""' : 'style=""') . ' align=center bgcolor="' . (($_GET['otdel'] == 3) ? '#a5a5a5' : '') . '"><a href="javascript:void(0);" onclick="inventoryAjax(\'main.php?inv=1&mAjax=true&otdel=3&rn=3.1\');">Эликсиры</a></td> <td style="border-top:4px solid #d4d2d2;border-bottom:4px solid #d4d2d2;" width="20%" ' . (($_GET['otdel'] != 6) ? 'style=""' : 'style=""') . ' align=center bgcolor="' . (($_GET['otdel'] == 6) ? '#a5a5a5' : '') . '"><a href="javascript:void(0);" onclick="inventoryAjax(\'main.php?inv=1&mAjax=true&otdel=6&rn=6.1\');">Руны</a></td> <td style="border-top:4px solid #d4d2d2;border-bottom:4px solid #d4d2d2;" width="20%" ' . (($_GET['otdel'] != 4) ? 'style=""' : 'style="" ') . ' align=center bgcolor="' . (($_GET['otdel'] == 4) ? '#a5a5a5' : '') . '"><a href="javascript:void(0);" onclick="inventoryAjax(\'main.php?inv=1&mAjax=true&otdel=4&rn=4.1\');">Прочее</a></td> </tr> </table></td> </tr> <tr> <td align="center" ><table border="0" cellpadding="0" cellspacing="0" width="100%" style="padding-top:0px; border-left: 1px solid #A5A5A5; border-right: 1px solid #A5A5A5;" bgcolor="#a5a5a5"> <tr> <td align="left" style="color:#2b2c2c; height: 20 px;font-size:12px; padding-top:2px;' . $clrb . '"> <b> Рюкзак (масса: ' . (0 + $u->aves['now']) . '/' . $u->aves['max'] . ')</b> ' . $clrba . ' <input type="submit" style="display: none" id="inpFilterName_submit" value="Фильтр" onclick="return false"> <div class="autocomplete-suggestions" style="position: absolute; display: none;top: 15px; left:0; margin:0px auto; right: 0px; font-size:12px; font-family: Tahoma; max-height: 300px; z-index: 9999;"></div> </div> </form> <input type="button" onclick="inventorySort(this);" style="margin:0px 2px;" value="Сортировка" /> ' . $inventorySortBox . ' </td> </tr> </table></td> </tr> <tr> <td valign="top" align="center"> <div style="height:350px; border-bottom: 1px solid #A5A5A5;border-top: 1px solid #A5A5A5;" id="itmAllSee"><table width="100%" border="0" cellspacing="1" align="center" cellpadding="0" bgcolor="#A5A5A5">' . (($u->info['invBlock'] == 0) ? $itmAllSee : '<div align="center" style="padding:10px;background-color:#A5A5A5;"><form method="post" action="main.php?inv=1&otdel=' . $_GET['otdel'] . '&relockinvent"><b>Рюкзак закрыт.</b><br><img title="Замок для рюкзака" src="https://img.new-combats.com/i/items/box_lock.gif"> Введите пароль: <input id="relockInv" name="relockInv" type="password"><input type="submit" value="Открыть"></form></div>') . '</table></div></td> </tr> </table> <script language="JavaScript"> if($.cookie(\'invFilterByName\')) $("#ShowInventory").hide(); $(document).ready(function (){ $("#ShowInventory").show(); }); </script> '; if (isset($_GET['mAjax'])) { exit($showItems); } ?> <script type="text/javascript" src="js/jquery.1.11.js"></script> <script type="text/javascript" src="js/jquery.cookie.1.4.1.js"></script> <script type="text/javascript" src="js/jquery.autocomplete.js"></script> <script> $.cookie('invFilterByName', ''); var UpdateItemList; function inventorySort(e) { if ($('#inventorySortBox').css('display') == 'none') { $('#inventorySortBox').show(); $(e).addClass('focus'); } else { $('#inventorySortBox').hide(); $(e).removeClass('focus'); } } function inventoryHeight() { var height = $('#itmAll').height(); var heW = $(window).height(); heW = heW - 148; // 1060 height = height - 120; // 462 var heMax = $("#itmAllSee").children('table').height(); if (heMax > height) { if (heW > height) { $("#itmAllSee").height(heW); } else { $("#itmAllSee").height(height); } } else { $("#itmAllSee").height(heMax); } } $(window).ready(function () { inventoryHeight(); }); $(window).resize(function () { inventoryHeight(); }); function seetext(id) { var id = document.getElementById('close_text_itm' + id); if (id.style.display == 'none') { id.style.display = ''; } else { id.style.display = 'none'; } } function UpdateItemList() { var inv_names = []; var items = $('a.inv_name'); $(items).each(function () { if ($.inArray($(this).text(), inv_names) < 0) inv_names.push($(this).text()); }); $('#inpFilterName').autocomplete({lookup: inv_names, onSelect: invFilterByName}); } function invFilterByName() { $.cookie('invFilterByName', ''); var val = $('#inpFilterName').val(); if (val == '') $("a.inv_name").parent().parent().stop().show(); else { $.cookie('invFilterByName', val); $("a.inv_name:not(:contains('" + val + "'))").parents('.item').stop().css('background-color', '').hide(); $("a.inv_name:contains('" + val + "')").parents('.item').stop().show(); } } function inventoryAjax(url) { $('#ShowInventory').html('<div align="center" style="padding:10px;background-color:#d4d2d2;color:grey;"><b>Загрузка...</b></div>'); $.ajax({ url: url, cache: false, dataType: 'html', success: function (html) { $('#ShowInventory').html(html); inventoryHeight(); UpdateItemList(); } }); } $(document).ready(function () { function UpdateItemList() { var inv_names = []; var items = $('a.inv_name'); $(items).each(function () { if ($.inArray($(this).text(), inv_names) < 0) inv_names.push($(this).text()); }); $('#inpFilterName').autocomplete({lookup: inv_names, onSelect: invFilterByName}); } function invFilterByName() { $.cookie('invFilterByName', ''); var val = $('#inpFilterName').val(); if (val == '') $("a.inv_name").parent().parent().stop().show(); else { $.cookie('invFilterByName', val); $("a.inv_name:not(:contains('" + val + "'))").parents('.item').stop().css('background-color', '').hide(); $("a.inv_name:contains('" + val + "')").parents('.item').stop().show(); } } UpdateItemList(); // пересчет предметов. invFilterByNameTimer = null; // просматриваем результат $('#line_filter').submit(function () { $('#inpFilterName_submit').trigger('click'); }); // Если в выпадающем списке предметов листаем при помощи клавиш Up и Down, автоматически просматриваем результат. $('#inpFilterName').keyup(function (e) { $('#inpFilterName_submit').trigger('click'); }); // Запоминаем прошлый поиск предмета и активируем его при открытии инвентаря\сундука if ($.cookie('invFilterByName')) { $('#inpFilterName').val($.cookie('invFilterByName')); invFilterByName(); } // Автообновление в реальном времени при написании текста. $('#line_filter').click(function () { window.clearInterval(invFilterByNameTimer); if ($('#inpFilterName').val() == '') invFilterByName(); else invFilterByNameTimer = setTimeout(invFilterByName, 200); return false; }); }); jQuery.expr[":"].contains = function (elem, i, match, array) { return (elem.textContent || elem.innerText || jQuery.text(elem) || "").toLowerCase().indexOf(match[3].toLowerCase()) >= 0; } </script> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="250" valign="top" align="right"> <div style="padding-top: 6px; text-align: center"> <?php $usee = $u->getInfoPers($u->info['id'], 0, 0, 1); echo $usee ? $usee[0] : 'information is lost.'; $priem = new Priems(); echo '<br>'; $priem->seeMy(1); echo '<br>' . $u->info_remont(); ?> </div> <div style="text-align: center"> <?= $c['counters']; ?> </div> </td> <td width="287" style="padding-right:7px;" valign="top" align="left"> <?php include('stats_inv.php'); ?> </td> <td valign="top" id="itmAll"> <div style="z-index: 2; position: relative; width:100%; display:table; box-sizing: border-box; margin: 0; padding: 0 5px 3px 5px;"> <div style="display:table-cell;"><!-- Кнопки возврата и другие--></div> <div style="display:table-cell; text-align: right;"> <input class="btn btn-success" type="button" onclick="top.frames['main'].location='main.php?titul&rnd=<?php echo $code; ?>'" value="Достижения"/> <input class="btn btn-success" type="button" onclick="top.frames['main'].location='main.php?newanimal&rnd=<?php echo $code; ?>'" value="Звери"/> <input class="btn btn-success" type="button" onclick="window.open('/exp');" value="Таблица опыта"/> <input class="btn btn-success" type="button" onclick="window.open('/stats_bonus.php');" value="Бонусы статов"/> <input class="btn btn-success" type="button" onclick="top.frames['main'].location='main.php?act_trf&rnd=<?php echo $code; ?>'" value="Отчеты о переводах"/> <?php if (!$u->info['inTurnir']): ?> <input class="btn btn-success" type="button" onclick="top.frames['main'].location='main.php?obraz&rnd=<?= $code; ?>'" value="Образ"/> <?php endif; $stmt = Database::pdoinit()->prepare( 'select count(*) from reimage where ((uid = ? and clan = 0) or clan = ?) and good != 0 and bad = 0' ); $stmt->execute([$u->info['id'], $u->info['clan']]); if ($stmt->fetchColumn()) { ?> <input class="btn" type="button" onclick="top.frames['main'].location='main.php?galery&rnd=<?= $code; ?>'" value="Галерея"/> <?php } unset($stmt); ?> <input class="btn btn-success" type="button" onclick="top.frames['main'].location='main.php'" value="Вернуться"/> </div> </div> <table width="100%" border="0" cellspacing="0" cellpadding="0" noresize="noresize"> <?php if ($u->error): ?> <tr> <td> <div style="min-height:18px;padding:2px 4px; color: red; font-weight: bold;"> <?= $u->error ?> </div> </td> </tr> <?php endif; ?> <tr> <td id="ShowInventory"> <?= $showItems; ?> </td> </tr> </table> </td> </tr> </table>