rendered paste body<?phpdefine('PUN_ROOT', './');require PUN_ROOT.'include/common.php';require PUN_ROOT.'lang/'.$pun_user['language'].'/cash.php';if ($pun_user['is_guest']) message($lang_common['No view']);if (isset($_POST['form_sent'])){ $items = isset($_POST['item']) && is_array($_POST['item']) ? $_POST['item'] : array(); $deduct_cash = 0; $deduct_quantity = array(); $sql = array(); foreach ($items as $item_id => $to_buy) { if ($to_buy > 0) { $result = $db->query('SELECT item_name, item_quantity, item_cost FROM '.$db->prefix.'items WHERE item_id = '.$item_id) or error('Unable to fetch item information', __FILE__, __LINE__, $db->error()); if ($db->num_rows($result) > 0) { $item_info = $db->fetch_assoc($result); if ($to_buy > $item_info['item_quantity']) message('You can not buy '.$to_buy.' '.pun_htmlspecialchars($item_info['item_name']).'(s): there is/are only '.$item_info['item_quantity'].' left!'); if (($to_buy * $item_info['item_cost']) > $pun_user['cm_cash']) message('You don\'t have enough '.pun_htmlspecialchars($pun_config['cm_cur_name']).' to buy '.$to_buy.' '.pun_htmlspecialchars($item_info['item_name']).'.'); $sql[] = '('.$item_id.', '.$pun_user['id'].', '.$to_buy.')'; $deduct_cash += $to_buy * $item_info['item_cost']; } else { message($lang_common['Bad request']); } } } // If we're here, all of the items are valid to buy foreach ($items as $item_id => $to_buy) { $db->query('UPDATE '.$db->prefix.'items set item_quantity = item_quantity - '.$to_buy.' WHERE item_id = '.$item_id) or error('Unable to deduct item from store', __FILE__, __LINE__, $db->error()); } $db->query('UPDATE '.$db->prefix.'users SET cm_cash = cm_cash - '.$deduct_cash.' WHERE id = '.$pun_user['id']) or error('Unable to deduct cash', __FILE__, __LINE__, $db->error()); $db->query('INSERT INTO '.$db->prefix.'inventory (item_id, user_id, quantity) VALUES '.implode(',', $sql).' ON DUPLICATE KEY UPDATE quantity = quantity + VALUES(quantity)') or error('Unable to add items to inventory', __FILE__, __LINE__, $db->error()); redirect($_SERVER['REQUEST_URI'], 'Items purchased. Redirecting …');}$page_title = pun_htmlspecialchars($pun_config['o_board_title'].' - Shop');define('PUN_ALLOW_INDEX', 1);require PUN_ROOT.'header.php';?><div class="block"> <div class="box"> <div class="inbox"><p><strong>If you are looking to buy user account changes, then please go to the <a href="shop.php">Shop</a> which will sell these to you. This section is for Chibis, Edible Items, and Misc Items.</strong></p> </div> </div></div> <div class="blocktable"> <h2><span>Buy some items</span></h2> <div class="box"> <div class="inbox"> <form method="post" action="<?php echo $_SERVER['REQUEST_URI'] ?>"> <input type="hidden" name="form_sent" value="1" /> <div class="inform"> <table cellspacing="0"> <thead> <tr> <th class="tc2" scope="col">Image</th> <th class="tcl" scope="col">Item Name</th> <th class="tc2" scope="col">Price</th> <th class="tc3" scope="col">Rarity</th> <th class="tc3" scope="col">Quantity Remaining</th> <th class="tcr" scope="col">Number to Buy</th> </tr> </thead> <tbody><?php// Display all the categories and forums$result = $db->query('SELECT * FROM '.$db->prefix.'items') or error('Unable to fetch item list', __FILE__, __LINE__, $db->error());while ($cur_item = $db->fetch_assoc($result)){?> <tr> <td class="tc2"><img src="img/items/<?php echo pun_htmlspecialchars($cur_item['item_image']) ?>" alt="<?php echo pun_htmlspecialchars($cur_item['item_name']) ?>"/> <td class="tcl"><?php echo pun_htmlspecialchars($cur_item['item_name']) ?> <br /><?php echo pun_htmlspecialchars($cur_item['description']) ?></td> <td class="tc2"><?php echo $cur_item['item_cost'] ?> <?php echo pun_htmlspecialchars($pun_config['cm_cur_name']) ?></td> <td class="tc3"><?php echo $cur_item['item_rarity'] ?></td> <td class="tc3"><?php echo $cur_item['item_quantity'] ?></td> <td class="tcr"><input type="text" name="item[<?php echo $cur_item['item_id'] ?>]" value="0" /></td> </tr><?php}?> </tbody> </table> </div> <p class="submitend"><input type="submit" name="buy" value="Buy selected items" /></p> </form> </div> </div> </div><?phprequire PUN_ROOT.'footer.php';