You can now view shop offers without being logged in.

(This is also configurable if config.php if you don't want this behavior).
This commit is contained in:
Znote 2017-02-05 02:16:18 +01:00
parent 1b93b11f2c
commit f47e12a610
2 changed files with 89 additions and 70 deletions

View File

@ -890,6 +890,7 @@
// If useDB is set to true, player can shop in-game as well using Znote LUA shop system plugin. // If useDB is set to true, player can shop in-game as well using Znote LUA shop system plugin.
$config['shop'] = array( $config['shop'] = array(
'enabled' => false, 'enabled' => false,
'loginToView' => false, // Do user need to login to see the shop offers?
'enableShopConfirmation' => true, // Verify that user wants to buy with popup 'enableShopConfirmation' => true, // Verify that user wants to buy with popup
'useDB' => false, // Fetch offers from database, or the below config array 'useDB' => false, // Fetch offers from database, or the below config array
'showImage' => true, 'showImage' => true,

View File

@ -1,5 +1,4 @@
<?php require_once 'engine/init.php'; <?php require_once 'engine/init.php';
protect_page();
include 'layout/overall/header.php'; include 'layout/overall/header.php';
if (isset($_GET['callback']) && $_GET['callback'] === 'processing') { if (isset($_GET['callback']) && $_GET['callback'] === 'processing') {
@ -8,8 +7,12 @@ if (isset($_GET['callback']) && $_GET['callback'] === 'processing') {
// Import from config: // Import from config:
$shop = $config['shop']; $shop = $config['shop'];
if ($shop['loginToView'] === true) protect_page();
$loggedin = user_logged_in();
$shop_list = $config['shop_offers']; $shop_list = $config['shop_offers'];
if ($loggedin === true) {
if (!empty($_POST['buy']) && $_SESSION['shop_session'] == $_POST['session']) { if (!empty($_POST['buy']) && $_SESSION['shop_session'] == $_POST['session']) {
$time = time(); $time = time();
$player_points = (int)$user_znote_data['points']; $player_points = (int)$user_znote_data['points'];
@ -67,12 +70,14 @@ if (!empty($_POST['buy']) && $_SESSION['shop_session'] == $_POST['session']) {
//var_dump($buy); //var_dump($buy);
//echo '<font color="red" size="4">'. $_POST['buy'] .'</font>'; //echo '<font color="red" size="4">'. $_POST['buy'] .'</font>';
} }
}
if ($shop['enabled']) { if ($shop['enabled']) {
?> ?>
<h1>Shop Offers</h1> <h1>Shop Offers</h1>
<?php <?php
if ($loggedin === true) {
if (!empty($_POST['buy']) && $_SESSION['shop_session'] == $_POST['session']) { if (!empty($_POST['buy']) && $_SESSION['shop_session'] == $_POST['session']) {
if ($user_znote_data['points'] >= $buy['points']) { if ($user_znote_data['points'] >= $buy['points']) {
?><td>You have <?php echo (int)($user_znote_data['points'] - $buy['points']); ?> points. (<a href="buypoints.php">Buy points</a>).</td><?php ?><td>You have <?php echo (int)($user_znote_data['points'] - $buy['points']); ?> points. (<a href="buypoints.php">Buy points</a>).</td><?php
@ -87,6 +92,9 @@ if ($config['shop_auction']['characterAuction']) {
<p>Interested in buying characters? View the <a href="auctionChar.php">character auction page!</a></p> <p>Interested in buying characters? View the <a href="auctionChar.php">character auction page!</a></p>
<?php <?php
} }
} else {
?><p>You need to be logged in to use the shop.</p><?php
}
$outfitsIds = array(136,137,138,139,140,141,142,147,148,149,150,155,156,157,158,252,269,270,279,288,324,336,366,431,433,464,466,471,513,514,542,128,129,130,131,132,133,134,143,144,145,146,151,152,153,154,251,268,273,278,289,325,335,367,430,432,463,465,472,512,516,541); $outfitsIds = array(136,137,138,139,140,141,142,147,148,149,150,155,156,157,158,252,269,270,279,288,324,336,366,431,433,464,466,471,513,514,542,128,129,130,131,132,133,134,143,144,145,146,151,152,153,154,251,268,273,278,289,325,335,367,430,432,463,465,472,512,516,541);
$category_items = array(); $category_items = array();
@ -197,7 +205,7 @@ foreach ($shop_list as $key => $offer) {
<?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?> <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
<td>Count:</td> <td>Count:</td>
<td>Points:</td> <td>Points:</td>
<td>Action:</td> <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
</tr> </tr>
<?php foreach ($category_items as $key => $offers): ?> <?php foreach ($category_items as $key => $offers): ?>
<tr class="special"> <tr class="special">
@ -207,6 +215,7 @@ foreach ($shop_list as $key => $offer) {
<?php endif; ?> <?php endif; ?>
<td><?php echo $offers['count']; ?>x</td> <td><?php echo $offers['count']; ?>x</td>
<td><?php echo $offers['points']; ?></td> <td><?php echo $offers['points']; ?></td>
<?php if ($loggedin === true): ?>
<td> <td>
<form action="" method="POST"> <form action="" method="POST">
<input type="hidden" name="buy" value="<?php echo (int)$key; ?>"> <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
@ -214,6 +223,7 @@ foreach ($shop_list as $key => $offer) {
<input type="submit" value=" PURCHASE " class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>"> <input type="submit" value=" PURCHASE " class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>">
</form> </form>
</td> </td>
<?php endif; ?>
</tr> </tr>
<?php endforeach; ?> <?php endforeach; ?>
</table> </table>
@ -224,7 +234,7 @@ foreach ($shop_list as $key => $offer) {
<?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?> <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
<td>Duration:</td> <td>Duration:</td>
<td>Points:</td> <td>Points:</td>
<td>Action:</td> <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
</tr> </tr>
<?php foreach ($category_premium as $key => $offers): ?> <?php foreach ($category_premium as $key => $offers): ?>
<tr class="special"> <tr class="special">
@ -234,6 +244,7 @@ foreach ($shop_list as $key => $offer) {
<?php endif; ?> <?php endif; ?>
<td><?php echo $offers['count']; ?> Days</td> <td><?php echo $offers['count']; ?> Days</td>
<td><?php echo $offers['points']; ?></td> <td><?php echo $offers['points']; ?></td>
<?php if ($loggedin === true): ?>
<td> <td>
<form action="" method="POST"> <form action="" method="POST">
<input type="hidden" name="buy" value="<?php echo (int)$key; ?>"> <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
@ -241,6 +252,7 @@ foreach ($shop_list as $key => $offer) {
<input type="submit" value=" PURCHASE " class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>"> <input type="submit" value=" PURCHASE " class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>">
</form> </form>
</td> </td>
<?php endif; ?>
</tr> </tr>
<?php endforeach; ?> <?php endforeach; ?>
</table> </table>
@ -250,7 +262,7 @@ foreach ($shop_list as $key => $offer) {
<td>Description:</td> <td>Description:</td>
<?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?> <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
<td>Points:</td> <td>Points:</td>
<td>Action:</td> <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
</tr> </tr>
<?php foreach ($category_outfits as $key => $offers): ?> <?php foreach ($category_outfits as $key => $offers): ?>
<tr class="special"> <tr class="special">
@ -259,6 +271,7 @@ foreach ($shop_list as $key => $offer) {
<td><img src="<?php echo $config['show_outfits']['imageServer']; ?>?id=<?php echo $offers['itemid']; ?>&addons=<?php echo $offers['count']; ?>&head=<?php echo rand(1, 132); ?>&body=<?php echo rand(1, 132); ?>&legs=<?php echo rand(1, 132); ?>&feet=<?php echo rand(1, 132); ?>" alt="img"></td> <td><img src="<?php echo $config['show_outfits']['imageServer']; ?>?id=<?php echo $offers['itemid']; ?>&addons=<?php echo $offers['count']; ?>&head=<?php echo rand(1, 132); ?>&body=<?php echo rand(1, 132); ?>&legs=<?php echo rand(1, 132); ?>&feet=<?php echo rand(1, 132); ?>" alt="img"></td>
<?php endif; ?> <?php endif; ?>
<td><?php echo $offers['points']; ?></td> <td><?php echo $offers['points']; ?></td>
<?php if ($loggedin === true): ?>
<td> <td>
<form action="" method="POST"> <form action="" method="POST">
<input type="hidden" name="buy" value="<?php echo (int)$key; ?>"> <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
@ -266,6 +279,7 @@ foreach ($shop_list as $key => $offer) {
<input type="submit" value=" PURCHASE " class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>"> <input type="submit" value=" PURCHASE " class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>">
</form> </form>
</td> </td>
<?php endif; ?>
</tr> </tr>
<?php endforeach; ?> <?php endforeach; ?>
</table> </table>
@ -275,7 +289,7 @@ foreach ($shop_list as $key => $offer) {
<td>Description:</td> <td>Description:</td>
<?php if ($config['show_outfits']['shop']) { ?><td>Image:</td><?php } ?> <?php if ($config['show_outfits']['shop']) { ?><td>Image:</td><?php } ?>
<td>Points:</td> <td>Points:</td>
<td>Action:</td> <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
</tr> </tr>
<?php foreach ($category_mounts as $key => $offers): ?> <?php foreach ($category_mounts as $key => $offers): ?>
<tr class="special"> <tr class="special">
@ -284,6 +298,7 @@ foreach ($shop_list as $key => $offer) {
<td><img src="<?php echo $config['show_outfits']['imageServer']; ?>?id=<?php echo $outfitsIds[rand(0,count($outfitsIds)-1)]; ?>&addons=<?php echo rand(1, 3); ?>&head=<?php echo rand(1, 132); ?>&body=<?php echo rand(1, 132); ?>&legs=<?php echo rand(1, 132); ?>&feet=<?php echo rand(1, 132); ?>&mount=<?php echo $offers['itemid']; ?>&direction=2" alt="img"></td> <td><img src="<?php echo $config['show_outfits']['imageServer']; ?>?id=<?php echo $outfitsIds[rand(0,count($outfitsIds)-1)]; ?>&addons=<?php echo rand(1, 3); ?>&head=<?php echo rand(1, 132); ?>&body=<?php echo rand(1, 132); ?>&legs=<?php echo rand(1, 132); ?>&feet=<?php echo rand(1, 132); ?>&mount=<?php echo $offers['itemid']; ?>&direction=2" alt="img"></td>
<?php endif; ?> <?php endif; ?>
<td><?php echo $offers['points']; ?></td> <td><?php echo $offers['points']; ?></td>
<?php if ($loggedin === true): ?>
<td> <td>
<form action="" method="POST"> <form action="" method="POST">
<input type="hidden" name="buy" value="<?php echo (int)$key; ?>"> <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
@ -291,6 +306,7 @@ foreach ($shop_list as $key => $offer) {
<input type="submit" value=" PURCHASE " class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>"> <input type="submit" value=" PURCHASE " class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>">
</form> </form>
</td> </td>
<?php endif; ?>
</tr> </tr>
<?php endforeach; ?> <?php endforeach; ?>
</table> </table>
@ -301,7 +317,7 @@ foreach ($shop_list as $key => $offer) {
<?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?> <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
<td>Count/duration:</td> <td>Count/duration:</td>
<td>Points:</td> <td>Points:</td>
<td>Action:</td> <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
</tr> </tr>
<?php foreach ($category_misc as $key => $offers): ?> <?php foreach ($category_misc as $key => $offers): ?>
<tr class="special"> <tr class="special">
@ -315,6 +331,7 @@ foreach ($shop_list as $key => $offer) {
<td><?php echo $offers['count']; ?>x</td> <td><?php echo $offers['count']; ?>x</td>
<?php endif; ?> <?php endif; ?>
<td><?php echo $offers['points']; ?></td> <td><?php echo $offers['points']; ?></td>
<?php if ($loggedin === true): ?>
<td> <td>
<form action="" method="POST"> <form action="" method="POST">
<input type="hidden" name="buy" value="<?php echo (int)$key; ?>"> <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
@ -322,6 +339,7 @@ foreach ($shop_list as $key => $offer) {
<input type="submit" value=" PURCHASE " class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>"> <input type="submit" value=" PURCHASE " class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>">
</form> </form>
</td> </td>
<?php endif; ?>
</tr> </tr>
<?php endforeach; ?> <?php endforeach; ?>
</table> </table>