Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Não sei de quem era o script original, créditos a ele


Shop ModernAac editado:
*Traduzi 80% para o português
*Retirei o bug do f5 pra conseguir comprar vários itens na loja
*Troquei algumas linhas de comando que ocasionavam erros nas versões mais atuais do Xampp

*Adicionei novas tabelas
*Retirei varias linhas de códigos desnecessarias pra deixar o script mais leve
*Adicionei mensagem quando o item chegar pra pessoa no jogo



Lets'go

 

1-Em sua database  importe essa sql

Shop.sql

2-Na aba principal do Htdocs crie uma pasta chamada "ShopSystem" e dentro dela crie 2 arquivos .php


index.php

Quote

<?php
header("Location: ../index.php");
?>

 

shopping.php

Quote

<?php


sleep(1); // this should halt for 1 seconds for every loop

//Product Types
//Categories :
//
//[ 1 - Modificações de conta ]
//1 - Conta VIP
//2 - Remove Skull (ANY)
//3 - Desbanir conta
//4 - Trocar nome
//
//[ 2 - Em Promoçao ]
//5 - 50% de desconto
//
//[ 3 - Novos e notaveis ]
//6 - Novos e notaveis
//
//[ 4 - Itens para iniciantes ]
//8 - Itens para iniciantes
//
//[ 5 - Itens para quests ]
//9 - Itens para quests
//
//[ 6 - Stones e itens de aprimoramento ]
//10 - Stones e itens de aprimoramento
//
//[ 7 - Trajes ]
//11 - Trajes
//
//[ 8 - Skins para Pokemons ]
//12 - Skins para Pokemons
//
//[ 9 - Outros ]
//13 - Outros
//
//HOWTO PUT IMAGES FOR TYPES 1-4 [ Modificaçoes da conta ]
//Go to public/images/ folder and create a GIF image (Or put)
//With the ID of the type [See at the top of the script]
//Ex. Type (1) - Premium Account (public/images/1.gif)

//Variables
require("config.php");
echo "<div class='title'>Shopping Online</div>";
echo "<div class='info'>";
include("config/functions.php");
require("config/config.php");
$this->load->helper("url");
$ots = POT::getInstance();
$ots->connect(POT::DB_MYSQL, connection());
$SQL = $ots->getDBHandle();
$SHOP = new shop;
$ide = new IDE;
$action = $this->uri->segment(4);
$categories = array(1 => 'Modificações de Conta', 2 => 'Em promoçao', 3 => 'Novos e notaveis', 4 => 'Itens para iniciantes', 5 => 'Itens para quest', 6 => 'Stones e itens de aprimoramento', 7 => 'Trajes', 8 => 'Skins para Pokemons', 9 => 'Outros');
if ($_SESSION['logged'] == 1) {
    if ($SHOP->isInstalled()) {
    if ($action == '') {
        if($ide->isAdmin()) {
                    echo "<div class='toolbar' align='center'>";
                    echo "<a href='".WEBSITE."/index.php/p/v/shopping/admin'>Editar SHOP</a>";
                    echo "</div><br />";
        }
        echo "<div class='alert alert-info'><b>SISTEMA:</b> Os itens em promoção, <b>mudarão a cada 24 horas'</b>: sendo trocados todos os dias as 18:00 horas</b> </div><br><br><br>";
        echo '<div id="accordion">';
        $i = 0;
            foreach($categories as $key=>$value) {
                    echo '<div class="title">'.$categories[$key].'</div>
                    <div class="info">';
                     if($SQL->query('SELECT * FROM shop_offer WHERE category = '.$key.'')->fetch()) {
                        echo '<table class="table" border="0" cellspacing="1" cellpadding="4" width="100%">
                         <tr>
                          <td width="20%" style="font-weight: bold;">Imagem</td>
                          <td width="40%" style="font-weight: bold;">Produto</td>
                          <td width="20%" style="font-weight: bold;">Pontos</td>
                          <td width="20%" style="font-weight: bold;">Ação</td>
                         </tr>';
                         foreach($SQL->query('SELECT * FROM shop_offer WHERE category = '.$key.'') as $item) {
                            if (is_int($i / 2))
                                $bgcolor = "#ececec";
                            else
                                $bgcolor = "#ffffff";
                            $i++;
                            echo '<tr class="highlight" bgcolor="'.$bgcolor.'" style="text-align: center;">
                            <td>';
                            if($item['category'] == '1')
                            $image = 'public/images/'.$item['type'].'.gif';
                            else
                            $image = 'public/images/items/'.$item['item'].'.gif';
                                  if(!file_exists($image))
                                    echo 'Sem imagem';
                                  else
                                    echo '<img height="32px" width="32px" src="'.WEBSITE.'/'.$image.'"/>';
                                echo '</td>
                                <td><b>'.$item['name'].'</b><br>'.$item['description'].'</td>
                                <td>'.$item['points'].'</td>
                                <td><button class="btn btn-info" type="submit" onClick="window.location.href=\''.WEBSITE.'/index.php/p/v/shopping/buy/'.$item['id'].'\';" class="ide_button">Comprar</button></td>
                                </tr>';
                         }
                         echo '</table></div>';
                    }
                    else {
                        echo "";
                        echo '</div>';
                    }
            }
        echo '</div>';
        echo '<br><center><font style="color: #4F82CB; font-weight: bold; font-size: 12px">Você tem: <font color="#4EBF37">'.$SHOP->points($_SESSION['name']).'</font> pontos premium.</font></center>';
    }
    elseif ($action == 'buy') {
        $product = $this->uri->segment(5);
        $productact = $this->uri->segment(6);
        if (!$product) {
            alert("Você não selecionou um produto.");
            echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping">Voltar ao shop</a></div>';
        }
        else {
            if($SQL->query('SELECT * FROM shop_offer WHERE id = '.$product.'')->fetch()) {
                $info = $SQL->query('SELECT * FROM shop_offer WHERE id = '.$product.'')->fetch();
                if($productact == '' || !$productact) {
                        if ($SHOP->points($_SESSION['name']) < $info['points']) {
                            alert("Você não possui pontos suficientes para comprar o produto. (<b>".$info['points']."</b>)");
            echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping">Voltar ao shop</a></div>';
                        }
                        else {
                            echo '<div id="accordion">';
                            echo '<h4>Produto selecionado</h4>
                            <div>';
                        echo '<table class="table table-striped" border="0" cellspacing="1" cellpadding="4" width="100%">
                         <tr>
                          <td width="25%" style="font-weight: bold;">Imagem</td>
                          <td width="50%" style="font-weight: bold;">Produto</td>
                          <td width="25%" style="font-weight: bold;">Pontos</td>
                         </tr>';
                            echo '<tr class="highlight" style="text-align: center">
                            <td>';
                            if($info['category'] == '1')
                            $image = 'public/images/'.$info['type'].'.gif';
                            else
                            $image = 'public/images/items/'.$info['item'].'.gif';
                                  if(!file_exists($image))
                                    echo 'Sem imagem';
                                  else
                                    echo '<img height="32px" width="32px" src="'.WEBSITE.'/'.$image.'"/>';
                                echo '</td>
                                <td><b>'.$info['name'].'</b><br>'.$info['description'].'</td>
                                <td>'.$info['points'].'</td>
                                </tr>';
                         echo '</table></div>
                                <h4>Selecionar personagem</h4>
                                <div>
                                <center><table class="table table-striped" border="0" cellspacing="7" cellpadding="4" width="50%">
                                <tr>
                                <td><form method="post" action="'.WEBSITE.'/index.php/p/v/shopping/buy/'.$info['id'].'/send">';
                                if($info['type'] == '4') 
                                    echo 'Mudar nome do personagem:';
                                else
                                    echo 'Enviar item para o personagem:';
                                echo '</td>
                                <td><select name="my_char">';
                                foreach($SHOP->CharacterList($_SESSION['name']) as $row)
                                    echo '<option>'.$row['name'].'</option>';
                                echo '</select></td>
                                </tr>
                                <tr>
                                <td>';
                                if($info['type'] == '4') 
                                    echo 'Novo nome:';
                                else
                                    echo 'Ou enviar para outro personagem:';
                                echo '</td>
                                <td><input type="text" name="other_char" size="10"/></td>
                                </tr>
                                <tr>
                                <td></td>
                                <td><button class="btn btn-success" type="submit" name="submit" value="true" class="ide_button">Comprar produto</td>
                                </tr></table></center></div></div>';
                                echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping/">Voltar ao Shop</a></div>';
                        }
                }
                elseif ($productact == 'send') {
                    if(!$_POST['submit'])
                        header("Location: ".WEBSITE."/index.php/p/v/shopping");
                    else {

                    if ($SHOP->points($_SESSION['name']) < $info['points']) {
                    alert("Você não mais Pontos (<b>".$info['points']."</b>)");


                    } else 

                    if($info['type'] != '4') {
                        if($_POST['other_char']) {
                            if($SQL->query('SELECT * FROM players WHERE name = "'.$_POST['other_char'].'"')->fetch()) {
                                $destination = $_POST['other_char'];
                                $send = true;
                            } else {
                                alert('<b>'.$_POST['other_char'].'</b> doesn\'t exists.');
                                echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping/buy/'.$info['id'].'">Voltar ao Shop</a></div>';
                                $send = false;
                            }
                        }
                        else {
                            $destination = $_POST['my_char'];
                            $send = true;
                        }
                    }
                    else {
                        $destination = $_POST['my_char'];
                        $send = true;
                    }
                        
                        if($send == true) {
                            $errors = '';
                            $processed = 0;
                            if ($info['type'] == '1') {
                                $processed = 1;
                                $finish = true;
                                $SHOP->AddPremium($destination,$info['count']);
                            }
                            elseif ($info['type'] == '2') {
                                $skulltime = $SQL->query('SELECT skull,skulltime FROM players WHERE name = "'.$destination.'"')->fetch();
                                if ($SHOP->isOnline($destination) == 1) {
                                    $errors .= 'Sorry, but <b>'.$destination.'</b> is On-Line right now.<br>';
                                    $finish = false;
                                }
                                elseif ($skulltime['skull'] == '0' && $skulltime['skulltime'] == '0') {
                                    $errors .= 'Sorry, but <b>'.$destination.'</b> doesn\'t have any skull.<br>';
                                    $finish = false;
                                }
                                else {
                                    $processed = 1;
                                    $finish = true;
                                    $SQL->query('UPDATE players SET skull = 0, skulltime = 0 WHERE name = "'.$destination.'"');
                                }
                            }
                            elseif ($info['type'] == '3') {
                                if ($SHOP->isOnline($destination) == 1) {
                                    $errors .= 'Sorry, but <b>'.$destination.'</b> is On-Line right now.<br>';
                                    $finish = false;
                                }
                                else {
                                    if ($SHOP->isBanned($destination)->fetch()) {
                                        $processed = 1;
                                        $finish = true;
                                        $SHOP->UnBan($destination);
                                    }
                                    else {
                                        $errors .= 'Sorry, but <b>'.$destination.'</b>\'s Account isn\'t banned at the moment.<br>';
                                        $finish = false;
                                    }
                                }
                            }
                            elseif ($info['type'] == '4') {
                                if ($SHOP->isOnline($destination) == 1) {
                                    $errors .= 'Sorry, but <b>'.$destination.'</b> is On-Line right now.<br>';
                                    $finish = false;
                                }
                                else {
                                    if ($SQL->query('SELECT * FROM players WHERE name = "'.$_POST['other_char'].'"')->fetch()) {
                                        $finish = false;
                                        $errors .= 'Sorry, but <b>'.$_POST['other_char'].'</b> already exists.<br>';
                                    }
                                    else {
                                        if(!$_POST['other_char']) {
                                            $finish = false;
                                            $errors .= 'Sorry, but you didn\'t put a new name for your character.<br>';
                                        }
                                        else {
                                            if (!preg_match('/[^A-Za-z]/', $_POST['other_char'])) {
                                                $processed = 1;
                                                $finish = true;
                                                $SQL->query('UPDATE players SET name = "'.$_POST['other_char'].'" WHERE name = "'.$destination.'"');
                                            }
                                            else {
                                                $finish = false;
                                                $errors .= 'Sorry, but <b>'.$_POST['other_char'].'</b> contains invalid characters (Use only: A-Z, a-z).<br>';
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                $finish = true;
                            }
                            if ($finish == true) {
                            echo '<div style="text-align: center; font-size: 15px; color: #4EBF37; font-weight: bold;">Transaction Succesfull</div><br>';
                            if($info['type'] == '4')
                            echo '<center>You have changed the name of <b>'.$destination.'</b> to <b>'.$_POST['other_char'].'</b>.</center>';
                            elseif($info['type'] == '3')
                            echo '<center>You have UnBanned <b>'.$destination.'</b>\'s Account.</center>';
                            else
                            echo '<center>Voce acaba de comprar o item <b>'.$info['name'].'</b> e deu para <b>'.$destination.'</b>.</center>';
                            echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping">Voltar para o Shop</a></div>';
                            $SQL->query('UPDATE accounts SET premium_points = '.($SHOP->points($_SESSION['name']) - $info['points']).' WHERE name = "'.$_SESSION['name'].'"');
                            $SQL->query('INSERT INTO shop_history (`id`, `product`, `session`, `player`, `date`, `processed`) VALUES (NULL, \''.$info['id'].'\',\''.$_SESSION['name'].'\', \''.$destination.'\', \''.time().'\',\''.$processed.'\')');;
                            }
                            else {
                            alert($errors);
                            echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping/buy/'.$info['id'].'">Go Back to Gift Shop</a></div>';
                            }
                        }
                    }
                }
            }
            else {
                header("Location: ".WEBSITE."/index.php/p/v/shopping");
            }
            echo '<br><center><font style="color: #4F82CB; font-weight: bold; font-size: 12px">Você tem: <font color="#4EBF37">'.$SHOP->points($_SESSION['name']).'</font> pontos premium.</font></center>';
        }
    }
    elseif ($action == 'history') {
        if ($SQL->query('SELECT * FROM shop_history WHERE session = "'.$_SESSION['name'].'" ORDER BY date DESC LIMIT 30')->fetch()) {
            echo '<div style="text-align: center; font-weight: bold;">Latest 30 Transactions</div>
            <table border="0" cellspacing="1" cellpadding="4" width="100%">
             <tr>
              <td class="white" style="text-align: center; font-weight: bold;">Imagem</td>
              <td class="white" style="text-align: center; font-weight: bold;">Produtos</td>
              <td class="white" style="text-align: center; font-weight: bold;">To</td>
              <td class="white" style="text-align: center; font-weight: bold;">Date</td>
              <td class="white" style="text-align: center; font-weight: bold;">Processed</td>
             </tr>';
             foreach($SQL->query('SELECT `z`.`player` AS `destination`, `z`.`date` AS `date`, `z`.`processed` AS `processed`, `o`.`category` AS `category`,`o`.`type` AS `type`,`o`.`item` AS `item`,`o`.`name` AS `name` FROM `shop_history` z LEFT JOIN `shop_offer` o ON `z`.`product` = `o`.`id` WHERE `z`.`session` = \''.$_SESSION['name'].'\' ORDER BY `z`.`date` DESC LIMIT 30') as $hist) {
                echo '<tr class="highlight" style="text-align: center"><td>';
                if($hist['category'] == '1')
                $image = 'public/images/'.$hist['type'].'.gif';
                else
                $image = 'public/images/items/'.$hist['item'].'.gif';
                      if(!file_exists($image))
                        echo 'NO IMAGE';
                      else
                        echo '<img height="32px" width="32px" src="'.WEBSITE.'/'.$image.'"/>';
                    echo '</td>
                    <td>'.$hist['name'].'</td>
                    <td>'.$hist['destination'].'</td>
                    <td>'.date("d-m-Y - H:i a", $hist["date"]).'</td>';
                        if ($hist['processed'] == '1')
                            echo '<td><img src="'.WEBSITE.'/public/images/true.gif"/></td>';
                        else
                            echo '<td><img src="'.WEBSITE.'/public/images/false.gif"/></td>';
                    echo '</tr>';
             }
             echo '</table>';
        }
        else {
            alert('You didn\'t made any transactions');
        }
    }
    elseif ($action == 'donate') {
        $show = $this->uri->segment(5);
            if ($show == 'history') {
                if ($SQL->query('SELECT * FROM shop_donation_history WHERE buyer = "'.$_SESSION['name'].'" ORDER BY date DESC LIMIT 30')->fetch()) {
            echo '<div style="text-align: center; font-weight: bold;">Latest 30 Donations</div>
            <table border="0" cellspacing="1" cellpadding="4" width="100%">
             <tr>
              <td class="white" style="text-align: center; font-weight: bold;">Method</td>
              <td class="white" style="text-align: center; font-weight: bold;">ID/Mail</td>
              <td class="white" style="text-align: center; font-weight: bold;">To Account</td>
              <td class="white" style="text-align: center; font-weight: bold;">Points Added</td>
              <td class="white" style="text-align: center; font-weight: bold;">Date</td>
             </tr>';
             foreach($SQL->query('SELECT * FROM shop_donation_history WHERE buyer = "'.$_SESSION['name'].'" ORDER BY date DESC LIMIT 30') as $hist) {
                echo '<tr class="highlight" style="text-align: center">
                <td>'; echo ($hist['method'] == 'PayPal')?'<img src="https://www.paypal.com/en_US/i/logo/paypal_logo.gif" height="50px" width="100px">':($hist['method'] == 'ContenidoPago')?'<img src="http://www.contenidopago.com/img/logo_ft.jpg" height="50px" width="100px">':''; echo '</td>
                <td>'.$hist['receiver'].'</td>
                <td>'.$hist['account'].'</td>
                <td>'.$hist['points'].'</td>
                <td>'.date("d-m-Y - H:i a", $hist["date"]).'</td>
                </tr>';
             }
             echo '</table>';
        }
        else {
            alert('You didn\'t donated');
        }
            }
            elseif (!$show || $show == '') {
                alert("".$config['server_name']."'s Administration <b>is not responsible</b> for <b>cases of loss of products</b>.<br><br> ".$config['server_name']."'s Administration <b>is responsible</b> for <b>cases of loss of points which have been sent to users</b>.");
                echo '<div id="accordion">';
                    foreach ($config['donations']['methods'] as $method => $active) {
                        if ($active == true) {
                            echo '<h3><a href="#">'.$method.'</a></h3>
                <div>';
                    if ($method == 'ContenidoPago') {
                        alert("This brand new system consists on <b>donations by SMS</b>.<br>
                        After donating you will receive <b>".$config['donations']['contenidopago']['Points']." Points</b>.<br><br>
                        <b>REMEMBER:</b><br>
                        You need to have <b>enough credit</b> to send <u>SMS</u>.<br><br>
                        You <b>MUST</b> fill the <b>Account Name</b> and the <b>Code Received</b> fields with <u>a valid account name</u> and <u>a valid code</u>.");
                        if(!isset($_POST['mysubmit'])) {
                        echo '<form method="post" action="" >
                          <fieldset style="border:1px solid #990000; width:450px; margin:auto;">
                            <legend style="font-weight:bold;font-size:12px;">Automatic SMS Donation</legend>
                            <ol style="list-style:none;">
                                <li style="padding-bottom:5px;"><label style="width:100px;float:left;text-align:left;">Account Name:</label><input type="text" style="border:1px solid #CCCCCC;" size="30" name="name" /></li>
                                <li style="padding-bottom:5px;"><label style="width:100px;float:left;text-align:left;">Code received:</label><input type="text" style="border:1px solid #CCCCCC;" size="30" name="codigo" /></li>
                               
                            </ol>
                            <center><input type="submit"   name="mysubmit" style="padding:3px;margin-bottom:10px;color:#FFFFFF;background-color:#990000;border:1px solid #000000;" value="Enviar" /></center>
                          </fieldset>
                    </form>';
                        }
                        else {
                            $codigo=$_POST['codigo'];
                            $name=$_POST['name'];
                            $QueryString  = "LinkUrl=http://".urlencode($_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
                            $QueryString .= "&codigo=" .urlencode($codigo);
                            $QueryString .= "&idservicio=" .$config['donations']['contenidopago']['Product'];


                            if(intval(get_cfg_var('allow_url_fopen')) && function_exists('file_get_contents')) {
                                $result=@file_get_contents("http://contenidopago.com/codigoval.php?".$QueryString); 
                            }
                            elseif(intval(get_cfg_var('allow_url_fopen')) && function_exists('file')) {
                                if($content = @file("http://contenidopago.com/codigoval.php?".$QueryString)) 
                                  $result=@join('', $content);
                            }
                            elseif(function_exists('curl_init')) {
                                $ch = curl_init ("http://contenidopago.com/codigoval.php?".$QueryString);
                                curl_setopt ($ch, CURLOPT_HEADER, 0);
                                curl_exec ($ch);

                                if(curl_error($ch))
                                    alert("Error processing request");

                                curl_close ($ch);
                            }
                            else {
                                alert("It appears that your web host has disabled all functions for handling remote pages and as a result the BackLinks software will not function on your web page. Please contact your web host for more information.");
                            }

                            if ($result =='ok')
                            {

                            if(!(empty($name)))
                            {
                                if(!$SQL->query("SELECT * FROM accounts WHERE name = '".$name."'")->fetch())
                                {
                                    alert('This username does not exist: <font color="blue">'.$name.'</font>');    
                                }
                                else {
                                $SQL->query("UPDATE accounts SET premium_points = premium_points + ".$config['donations']['contenidopago']['Points']." WHERE name = '".$name."'");
                                alert("Codigo : $codigo validado, puntos sumados correctamente");
                                $SQL->query("INSERT INTO shop_donation_history (`id`, `method`, `receiver`, `buyer`, `account`, `points`, `date`) VALUES (NULL, 'ContenidoPago', '".$config['donations']['contenidopago']['Product']."', '".$_SESSION['name']."', '".$name."', '".$config['donations']['contenidopago']['Points']."', '".time()."');");    
                                }
                            }
                            else {

                              alert('You did not set the user!'); 
                             } 
                                    
                            }

                            if ($result =='no')
                            {
                            alert('El codigo no es valido o ya esta usado');
                            }
                        }
                        echo '<center><iframe src ="http://www.contenidopago.com/prom/microcodigo.php" width="270px" height="340px" frameborder="0">
                        <p>Your browser does not support iframes.</p>
                        </iframe></center>';
                    }
                    elseif ($method == 'PayPal') {
                        alert("The donation costs <b>".$config['donations']['paypal']['Amount']." ".$config['donations']['paypal']['Money']."  (incl. VAT)</b>.<br>
                        After the donation you will receive a total of <b>".$config['donations']['paypal']['Points']." points</b> automatically.<br><br>
                        <b>REMEMBER:</b><br>
                        You need a <u>creditcard</u> <b>or</b> a <u>PayPal account</u> with a minimun of <b>".$config['donations']['paypal']['Amount']." ".$config['donations']['paypal']['Money']."</b>.<br><br>
                        You <b>MUST</b> fill the <b>Account Name</b> with a <u>valid one</u>.");
                        echo '<center><form action="https://www.paypal.com/cgi-bin/webscr" method="post">
                        <input type="hidden" name="cmd" value="_donations">
                        <input type="hidden" name="business" value="'.$config['donations']['paypal']['Mail'].'">
                        <input type="hidden" name="lc" value="GB">
                        <input type="hidden" name="item_name" value="'.$config['donations']['paypal']['Product'].'">
                        <b>Account Name:</b> <input type="text"  name="custom" value="">
                        <input type="hidden" name="item_number" value="1">
                        <input type="hidden" name="amount" value="'.$config['donations']['paypal']['Amount'].'">
                        <input type="hidden" name="currency_code" value="'.$config['donations']['paypal']['Money'].'">
                        <input type="hidden" name="no_note" value="0">
                        <input type="hidden" name="no_shipping" value="0">
                        <input type="hidden" name="notify_url" value="'.WEBSITE.'index.php/p/v/paypal">
                        <input type="hidden" name="return" value="'.WEBSITE.'">
    <input type="hidden" name="session" value="'.$_SESSION['name'].'">
                        <input type="hidden" name="rm" value="0">
                        <input type="hidden" name="bn" value="PP-DonationsBF:btn_donateCC_LG_global.gif:NonHosted"><br>
                        <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online.">
                        <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
                        </form></center>';
                    }
        echo '</div>';
                }
            }
        echo '</div>';
            }
            else {
                header("Location: ".WEBSITE."/index.php/p/v/shopping/donate");
            }
    }
    elseif ($action == 'admin') {
            if($ide->isAdmin()) {
                $manage = $this->uri->segment(5);
                    echo "<div class='toolbar' align='center'>";
                    echo "<a href='".WEBSITE."/index.php/p/v/shopping/admin/add/1'>Adicionar novo produto</a> | ";
                    echo "<a href='".WEBSITE."/index.php/p/v/shopping/admin/delete'>Remover produto existente</a> | ";
                    echo "<a href='".WEBSITE."/index.php/p/v/shopping/admin/points'>Adicionar/Remover pontos de players</a>";
                    echo "</div>";
                    
                        if ($manage == '' || !$manage) {
                            echo '<center>Welcome to Shop Admin Panel</center>';
                        }
                        elseif ($manage == 'add') {
                        $types[1] = array(1 => 'Premium Account', 2 => 'Remove Skull', 3 => 'UnBan Account', 4 => 'Change Name');
                        $types[2] = array(5 => 'Em Promoçao');
                        $types[3] = array(6 => 'Novos e notaveis'); 
                        $types[4] = array(8 => 'Itens para iniciantes');
                        $types[5] = array(9 => 'Itens para quests');
                        $types[6] = array(10 => 'Stones e itens de aprimoramento');
                        $types[7] = array(11 => 'Trajes');
                        $types[8] = array(12 => 'Skins para Pokemons');
                        $types[9] = array(13 => 'Outros');
                        
                        $step = $this->uri->segment(6);
                            if ($step == '1') {
                                echo '<form method="post" action="'.WEBSITE.'/index.php/p/v/shopping/admin/add/2">Selecionar categoria: <select name="category">';
                                foreach($categories as $key=>$value) {
                                    echo '<option value="'.$key.'">'.$categories[$key].'</option>';
                                }
                                echo '</select> <button type="submit" class="ide_button">Selecionar categoria</form>';
                            }
                            elseif ($step == '2' && $_POST['category']) {
                                echo '<form method="post" action="'.WEBSITE.'/index.php/p/v/shopping/admin/add/3">
                                <input type="hidden" name="category" value="'.$_POST['category'].'"/>
                                Selecionar tipo: <select name="type">';
                                foreach($types[$_POST['category']] as $key=>$value) {
                                    echo '<option value="'.$key.'">'.$types[$_POST['category']][$key].'</option>';
                                }
                                echo '</select> <button type="submit" class="ide_button">Selecionar tipo</form>';
                            }
                            elseif ($step == '3' && $_POST['category'] && $_POST['type']) {
                                    echo '<form method="post" action="'.WEBSITE.'/index.php/p/v/shopping/admin/add/4">
                                    <input type="hidden" name="category" value="'.$_POST['category'].'"/>
                                    <input type="hidden" name="type" value="'.$_POST['type'].'"/>
                                    <table border="0" cellspacing="1" cellpadding="4" width="100%">
                                        <tr>
                                        <td width="25%">Nome do produto:</td>
                                        <td width="25%"><input name="name" type="text" size="18" maxlength="256" /></td>
                                        <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">Escreva o nome do produto</td>
                                        </tr>
                                        <tr>
                                        <td width="25%">Dias VIP:</td>
                                        <td width="25%"><input name="points" type="text" value="0" size="10" maxlength="11" /></td>
                                        <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">Quantos pontos o produto vai custar</td>
                                        </tr>';
                                    if ($_POST['type'] == '1') {
                                        echo '<tr>
                                        <td width="25%">Dias VIP:</td>
                                        <td width="25%"><input name="count" type="text" value="0" size="1" maxlength="3" /></td>
                                        <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">Dias de conta vip</td>
                                        </tr>';
                                    }
                                    elseif ($_POST['type'] == '5' || $_POST['type'] == '6' || $_POST['type'] == '7' || $_POST['type'] == '8') {
                                        echo '<tr>
                                        <td width="25%">Item ID:</td>
                                        <td width="25%"><input name="item" type="text" value="0" size="3" maxlength="5" /></td>
                                        <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">ID of item to give</td>
                                        </tr>
                                        <tr>
                                        <td width="25%">Count:</td>
                                        <td width="25%"><input name="count" type="text" value="0" size="1" maxlength="3" /></td>
                                        <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">Count of item (max. 100) (When selecting \'Backpack of Items\' or \'Bag of Items\' type, the ITEM with that count will fill the container!)</td>
                                        </tr>';
                                    }
                                    echo '<tr>
                                        <td width="25%">Descrição:</td>
                                        <td width="25%"><textarea style="width: 120px; height: 80px;" name="description"></textarea></td>
                                        <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">descrição do produto (Shown of \'ShopSystem\' Page)</td>
                                        </tr>
                                        </table>
                                        <br><center><button type="submit" name="done" value="true" class="ide_button">Adicionar produto</form></center>';
                            }
                            elseif ($step == '4' && $_POST['done'] == 'true') {
                            $errors = '';
                                if ($_POST['points'] || $_POST['item'] || $_POST['count']) {
                                    if($_POST['points']) {
                                        if (!(!preg_match('/[^0-9]/', $_POST['points'])))
                                            $errors .= '1';
                                    }
                                    elseif($_POST['item']) {
                                        if (!(!preg_match('/[^0-9]/', $_POST['item'])))
                                            $errors .= '2';
                                    }
                                    elseif($_POST['count']) {
                                        if (!(!preg_match('/[^0-9]/', $_POST['count'])))
                                            $errors .= '3';
                                    }
                                }
                                if ($errors == '') {
                                    echo '<div style="text-align: center; font-size: 15px; color: #4EBF37; font-weight: bold;">Product Added!</div><br>
                                        <table border="0" cellspacing="1" cellpadding="4" width="100%">
                                        <tr class="highlight">
                                        <td style="font-weight: bold;" width="50%">Nome do produto:</td>
                                        <td width="50%">'.$_POST['name'].'</td>
                                        </tr>
                                        <tr class="highlight">
                                        <td style="font-weight: bold;" width="50%">Categoria:</td>
                                        <td width="50%">'.$categories[$_POST['category']].'</td>
                                        </tr>
                                        <tr class="highlight">
                                        <td style="font-weight: bold;" width="50%">Tipo:</td>
                                        <td width="50%">'.$types[$_POST['category']][$_POST['type']].'</td>
                                        </tr>
                                        <tr class="highlight">
                                        <td style="font-weight: bold;" width="50%">Preço em pontos:</td>
                                        <td width="50%">'.$_POST['points'].'</td>
                                        </tr>';
                                        if($_POST['type'] == '1') {
                                            echo '<tr class="highlight"><td style="font-weight: bold;" width="50%">Dias VIP:</td>
                                            <td width="50%">'.$_POST['count'].'</td>
                                            </tr>';
                                        }
                                        elseif ($_POST['type'] == '5' || $_POST['type'] == '6' || $_POST['type'] == '7' || $_POST['type'] == '8') {
                                            echo '<tr class="highlight"><td style="font-weight: bold;" width="50%">Item ID:</td>
                                            <td width="50%">'.$_POST['item'].'</td>
                                            </tr>
                                            <tr class="highlight"><td style="font-weight: bold;" width="50%">Count:</td>
                                            <td width="50%">'.$_POST['count'].'</td>
                                            </tr>';
                                        }
                                        echo '<tr class="highlight"><td style="font-weight: bold;" width="50%">descrição do produto:</td>
                                            <td width="50%">'.$_POST['descrição do produto'].'</td>
                                            </tr></table>';
                                        $PostItem = (!isset($_POST['item']))?'0':$_POST['item'];
                                        $PostCount = (!isset($_POST['count']))?'0':$_POST['count'];
                                        $SQL->query("INSERT INTO shop_offer (`id`, `points`, `category`, `type`, `item`, `count`, `descrição do produto`, `name`) VALUES (NULL, '".$_POST['points']."', '".$_POST['category']."', '".$_POST['type']."', '".$PostItem."', '".$PostCount."', '".$_POST['descrição do produto']."', '".$_POST['name']."')");
                                    echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping/admin">Go Back to Shop Admin</a></div>';
                                }
                                else {
                                    alert('Sorry but 1 or more spaces contains invalid characters.');
                                    echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping/admin">Go Back to Shop Admin</a></div>';
                                }
                            }
                            else {
                                header("Location: ".WEBSITE."/index.php/p/v/shopping/admin/add/1");
                            }
                        }
                        elseif ($manage == 'delete') {
                            $product = $this->uri->segment(6);
                            if (!$product) {
                                echo '<div id="accordion">';
            $i = 0;
            foreach($categories as $key=>$value) {
                    echo '<h3><a href="#">'.$categories[$key].'</a></h3>
                    <div>';
                     if($SQL->query('SELECT * FROM shop_offer WHERE category = '.$key.'')->fetch()) {
                        echo '<table border="0" cellspacing="1" cellpadding="4" width="100%">
                         <tr>
                          <td width="20%" class="white" style="text-align: center; font-weight: bold;">Imagem</td>
                          <td width="40%" class="white" style="text-align: center; font-weight: bold;">Produtos</td>
                          <td width="20%" class="white" style="text-align: center; font-weight: bold;">Pontos</td>
                          <td width="20%" class="white" style="text-align: center; font-weight: bold;">Ação</td>
                         </tr>';
                         foreach($SQL->query('SELECT * FROM shop_offer WHERE category = '.$key.'') as $item) {
                            if (is_int($i / 2))
                                $bgcolor = "#ececec";
                            else
                                $bgcolor = "#ffffff";
                            $i++;
                            echo '<tr class="highlight" bgcolor="'.$bgcolor.'" style="text-align: center;">
                            <td>';
                            if($item['category'] == '1')
                            $image = 'public/images/'.$item['type'].'.gif';
                            else
                            $image = 'public/images/items/'.$item['item'].'.gif';
                                  if(!file_exists($image))
                                    echo 'NO IMAGE';
                                  else
                                    echo '<img height="32px" width="32px" src="'.WEBSITE.'/'.$image.'"/>';
                                echo '</td>
                                <td><b>'.$item['name'].'</b><br>'.$item['description'].'</td>
                                <td>'.$item['points'].'</td>
                                <td><button type="submit" onClick="window.location.href=\''.WEBSITE.'/index.php/p/v/shopping/admin/delete/'.$item['id'].'\';" class="ide_button">Deletar oferta</button></td>
                                </tr>';
                         }
                         echo '</table></div>';
                    }
                    else {
                        alert("Esta categoria não contem produtos");
                        echo '</div>';
                    }
            }
        echo '</div>';
                            }
                            else {
                                if($SQL->query('SELECT * FROM shop_offer WHERE id = '.$product.'')->fetch()) {
                                    $SQL->query('DELETE FROM shop_offer WHERE id = '.$product.'');
                                    $SQL->query('DELETE FROM shop_history WHERE product = '.$product.'');
                                    echo '<div style="text-align: center; font-size: 15px; color: #4EBF37; font-weight: bold;">Produto deletado</div><br>
                                    <center>o produto de ID <b>'.$product.'</b> foi deletado da database</center>';
                                    echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping/admin">Voltar para o Shop</a></div>';
                                }
                                else {
                                    header("Location: ".WEBSITE."/index.php/p/v/shopping/admin/delete");
                                }
                            }
                        }
                        elseif ($manage == 'points') {
                            if (!isset($_POST['submit'])) {
                                echo '<div id="accordion">
                                <h3><a href="#">Adicionar Pontos</a></h3>
                                <div>
                                <table border="0" cellspacing="1" cellpadding="4" width="100%">
                                <tr>
                                        <form method="post" action="'.$_SERVER['PHP_SELF'].'">
                                        <td>Selecionar jogador:</td>
                                        <td><select name="player">';
                                        foreach($SQL->query('SELECT * FROM players ORDER BY name DESC') as $player) {
                                            echo '<option value="'.$player['id'].'">'.$player['name'].'</option>';
                                        }
                                        echo '</select></td>
                                        </tr><tr>
                                        <td>Enviar para outro jogador</td>
                                        <td><input type="text" name="other_char" size="10"/></td>
                                        </tr><tr>
                                        <td>Quantidade de pontos</td>
                                        <td><input type="text" name="points" size="10"/></td>
                                        </tr><tr>
                                        <td></td>
                                        <td><button type="submit" name="submit" value="add" class="ide_button"><button class="ide_button">Adicionar Pontos</button></td>
                                        </tr>
                                        </table></form>
                                </div>
                                <h3><a href="#">Remover Pontos</a></h3>
                                <div>
                                <table border="0" cellspacing="1" cellpadding="4" width="100%">
                                <tr>
                                        <form method="post" action="'.$_SERVER['PHP_SELF'].'">
                                        <td>Selecionar jogador</td>
                                        <td><select name="player">';
                                        foreach($SQL->query('SELECT * FROM players ORDER BY name DESC') as $player) {
                                            echo '<option value="'.$player['id'].'">'.$player['name'].'</option>';
                                        }
                                        echo '</select></td>
                                        </tr><tr>
                                        <td>Enviar para outro jogador</td>
                                        <td><input type="text" name="other_char" size="10"/></td>
                                        </tr><tr>
                                        <td>Remover quantos pontos</td>
                                        <td><input type="text" name="points" size="10"/></td>
                                        </tr><tr>
                                        <td></td>
                                        <td><button type="submit" name="submit" value="remove" class="ide_button"><button class="ide_button">Remover pontos</button></td>
                                        </tr>
                                        </table></form>
                                </div>
                                </div>';
                            }
                            else {
                            $errors = "";
                                if(!isset($_POST['other_char']) || $_POST['other_char'] == '') {
                                    $destination = $_POST['player'];
                                }
                                else {
                                    $ID = $SQL->query('SELECT id FROM players WHERE name = "'.$_POST['other_char'].'"')->fetch();
                                        if($ID)
                                            $destination = $ID['id'];
                                        else
                                            $errors .= "Player <b>".$_POST['other_char']."</b> doesn't exists.<br>";
                                }
                                if($_POST['points'] == '0' || $_POST['points'] < '0')
                                    $errors .= "Points quantity must be higher than 0!<br>";
                                elseif (!(!preg_match('/[^0-9]/', $_POST['points'])))
                                    $errors .= "Point quantity must be a <b>numeric value</b>!";
                                    
                                if(isset($destination)) {
                                    $player = $SQL->query('SELECT name FROM players WHERE id = "'.$destination.'"')->fetch();
                                    $account = $SHOP->getPlayerAccount($player['name'])->fetch();
                                        if ($_POST['submit'] == 'remove') {
                                            if ($SHOP->points($account['name']) == '0' || $SHOP->points($account['name']) < '0')
                                                $errors .= "Player <b>".$player['name']."</b> doesn't have any points.<br>";
                                        }
                                }
                                
                                                if ($errors == '') {
                                                $player = $SQL->query('SELECT name FROM players WHERE id = "'.$destination.'"')->fetch();
                                                $account = $SHOP->getPlayerAccount($player['name'])->fetch();
                                                echo '<div style="text-align: center; font-size: 15px; color: #4EBF37; font-weight: bold;">Points '; echo ($_POST['submit'] == 'add')?'added':'removed'; echo '!</div><br>
                                                <center>You have '; echo ($_POST['submit'] == 'add')?'added':'removed'; echo ' <b>'.$_POST['points'].'</b> points to <b>'.$player['name'].'</b>\'s Account.</center>';
                                                echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping/admin/points">Voltar para a configuração de pontos</a></div>';
                                                if($_POST['submit'] == 'add')
                                                    $SQL->query('UPDATE accounts SET premium_points = '.($SHOP->points($account['name']) + $_POST['points']).' WHERE name = "'.$account['name'].'"');
                                                elseif($_POST['submit'] == 'remove')
                                                    $SQL->query('UPDATE accounts SET premium_points = '.($SHOP->points($account['name']) - $_POST['points']).' WHERE name = "'.$account['name'].'"');
                                                }
                                                else {
                                                    alert($errors);
                                                    echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/shopping/admin/points">Go Back to Points Manage</a></div>';
                                                }
                            }
                        }
                        else {
                            header("Location: ".WEBSITE."/index.php/p/v/shopping/admin");
                        }
            }
            else {
                header("Location: ".WEBSITE."/index.php");
            }
    }
    else {
        header("Location: ".WEBSITE."/index.php/p/v/shopping");
    }
    }
        elseif(!$SHOP->isInstalled()) {
        if($ide->isAdmin()) {
            $SHOP->install();
            echo '<div style="text-align: center; font-size: 15px; color: #4EBF37; font-weight: bold;">Shop System Succesfully Installed!</div><br>
                <center>Your shop system has been installed succesfully!! click <a href="'.WEBSITE.'/index.php/p/v/shopping">HERE</a> to see your shop</center>';
        }
        else {
            header("Location: ".WEBSITE."/index.php");
        }

        }
}
else {
    header("Location: ".WEBSITE."/index.php");
}
?>
</div>
 

 

3- E dentro dessa mesma pasta, crie uma subpasta chamada " config " e nela crie mais 3 arquivos .php
 

config.php

Quote

<?php
/*Database information*/
$config['database']['host'] = "localhost";
$config['database']['login'] = "root";
$config['database']['password'] = "";
$config['database']['database'] = "DATABASE";

$config['donations']['methods'] = array('ContenidoPago' => true, 'PayPal' => true);

$config['donations']['paypal'] = array('Mail' => '', 'Points' => 6, 'Product' => 'Donation for VipHera', 'Money' => 'EUR', 'Amount' => 1);

$config['donations']['contenidopago'] = array('Product' => '1347', 'Points' => 4);
?>
 

Altere o Login e Password para os dados do seu site, e Database para o nome da sua database

 

functions.php

Quote

<?php

    class shop {
        function connect() {
            $ots = POT::getInstance();
            $ots->connect(POT::DB_MYSQL, connection());
        return $ots->getDBHandle();
        }
        
         function isInstalled() {
        require('config.php');
            $con = mysqli_connect($config['database']['host'], $config['database']['login'], $config['database']['password'], $config['database']['database']);
            if(mysqli_query($con, "SELECT * FROM shop_offer,shop_history"))
                return true;
            else
                return false;
        }
        
        function points($account) {
            $SQL = $this->connect();
            $points = $SQL->query('SELECT premium_points FROM accounts WHERE name = "'.$account.'"')->fetch();
            return $points['premium_points'];
        }
        
        function getPlayerAccount($name) {
            $SQL = $this->connect();
            $player = $SQL->query('SELECT account_id FROM players WHERE name = "'.$name.'"')->fetch();
            return $SQL->query('SELECT * from accounts WHERE id = '.$player['account_id'].'');
        }
        
        function AddPremium($name,$days) {
            $SQL = $this->connect();
            $account = $this->getPlayerAccount($name)->fetch();
            return $SQL->query('UPDATE accounts SET premdays = (premdays + '.$days.') WHERE name = "'.$account['name'].'"');
        }
        
        function CharacterList($account) {
            $SQL = $this->connect();
            $id = $SQL->query('SELECT id FROM accounts WHERE name = "'.$account.'"')->fetch();
            return $SQL->query('SELECT * FROM players WHERE account_id = '.$id['id'].'');
        }
        
        function isOnline($name) {
            $SQL = $this->connect();
            $player = $SQL->query('SELECT online FROM players WHERE name = "'.$name.'"')->fetch();
            return $player['online'];
        }
        
        
        function isBanned($name) {
            $SQL = $this->connect();
            $ID = $this->getPlayerAccount($name)->fetch();
            return $SQL->query('SELECT * FROM bans WHERE value = '.$ID['id'].'');
        }
        
        function UnBan($name) {
            $SQL = $this->connect();
            $ID = $this->getPlayerAccount($name)->fetch();
            return $SQL->query('DELETE FROM bans WHERE value = '.$ID['id'].'');
        }
        
        function execute_file($file) {
            if (!file_exists($file)) {
            $this->last_error = "The file $file does not exist.";
            return false;
            }
            $str = file_get_contents($file);
            if (!$str) {
            $this->last_error = "Unable to read the contents of $file.";
            return false;
            }

            // split all the queries into an array
            $quote = '';
            $line = '';
            $sql = array();
            $ignoreNextChar = '';
            for ($i = 0; $i < strlen($str); $i++) {
            if ( !$ignoreNextChar ) {
            $char = substr($str, $i, 1);
            $line .= $char;
            if ($char == ';' && $quote == '') {
            $sql[] = $line;
            $line = '';
            } else if ( $char == '\\' ) {
            // Escape char; ignore the next char in the string
            $ignoreNextChar = TRUE;
            } else if ($char == '"' || $char == "'" || $char == '`') {
            if ( $quote == '' ) // Start of a new quoted string; ends with same quote char
            $quote = $char;
            else if ( $char == $quote ) // Current char matches quote char; quoted string ends
            $quote = '';
            }
            }
            else
            $ignoreNextChar = FALSE;
            }

            if ($quote != '') return false;

            foreach ($sql as $query) {
            if (!empty($query)) {
            $r = mysql_query($query);

            if (!$r) {
            $this->last_error = mysql_error();
            return false;
            }
            }
            }
            return true;

        } 
        
        function install() {
            $SQL = $this->connect();
            if ($this->isInstalled())
                return false;
            else
                return $this->execute_file("Shop System/config/Shop.sql");
        }
    }
?>
 

 

index.php

Quote

<?php
header("Location: ../index.php");
?>

 

4- Agora em C:\xampp\htdocs\system\pages crie um arquivo chamado shopping.php
 

Quote

<?php
include("ShopSystem/shopping.php");
?>
 


5- Agora em C:\xampp\htdocs\templates\SUAPASTA\index.tpl

Abaixo de <div class="nav_links_logged">
Adicione:

Quote

<a href="{$path}index.php/p/v/shopping"> <img src="{$path}/templates/new/images/menuBalliconGreen.png"class="nav_link_icon"> Shop</a> <br>


<a href="{$path}index.php/p/v/shopping/history"> <img src="{$path}/templates/new/images/menuBalliconGreen.png" class="nav_link_icon"> Historico</a>  <br>

 

 

6- Agora em \Pokemon Server\datapack\globalevents\globalevents.XML adicione

Quote

    <globalevent name="shop" interval="30" script="shop.lua"/>

 

 

7- Agora em \Pokemon Server\datapack\globalevents\scripts\ crie um arquivo .lua

 

shop.lua

Quote

function onThink(interval, lastExecution, thinkInterval)

    local result = db.getResult("SELECT * FROM shop_history WHERE `processed` = 0;")
    
        if(result:getID() ~= -1) then
            while(true) do
                cid = getCreatureByName(tostring(result:getDataString("player")))
                product = tonumber(result:getDataInt("product"))
                itemr = db.getResult("SELECT * FROM shop_offer WHERE `id` = "..product..";")
                    if isPlayer(cid) then
                        local id = tonumber(itemr:getDataInt("item"))
                        local tid = tonumber(result:getDataInt("id"))
                        local count = tonumber(itemr:getDataInt("count"))
                        local tipe = tonumber(itemr:getDataInt("type"))
                        local productn = tostring(itemr:getDataString("name"))
                            if isInArray({5,8},tipe) then
                                if getPlayerFreeCap(cid) >= getItemWeightById(id, count) then
                                    if isContainer(getPlayerSlotItem(cid, 3).uid) then
                                        received = doAddContainerItem(getPlayerSlotItem(cid, 3).uid, id,count)
                                        if received then
                                            doPlayerSendTextMessage(cid,19, "Voce acaba de receber >> "..productn.." << do sistema de Loja Online")
                                            db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";")
                                        else
                                            doPlayerSendTextMessage(cid,19, "Desculpe, voce nao tem espaco suficiente para receber o produto >> "..productn.." <<")
                                        end
                                    else
                                        doPlayerSendTextMessage(cid,19, "Desculpe, voce nao tem espaco para receber >> "..productn.." <<")
                                    end
                                else
                                    doPlayerSendTextMessage(cid,19, "Desculpe, voce nao aguenta a capacidade do produto >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)")
                                end
                            elseif isInArray({6,7},tipe) then
                                    if tipe == 6 then
                                        bcap = 8
                                        bid = 1987
                                    elseif tipe == 7 then
                                        bcap = 20
                                        bid = 1988
                                    end
                                    if isItemRune(id) then
                                        count = 1
                                    end
                                    if getPlayerFreeCap(cid) >= (getItemWeightById(1987, 1) + getItemWeightById(id,count * bcap)) then
                                        local bag = doCreateItemEx(bid, 1)
                                            for i = 1,bcap do
                                                doAddContainerItem(bag, id, count)
                                            end
                                        received = doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, bag)
                                        if received == RETURNVALUE_NOERROR then
                                            doPlayerSendTextMessage(cid,19, "You have received >> "..productn.." << from our shop system")
                                            db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";")
                                        else
                                            doPlayerSendTextMessage(cid,19, "Sorry, you don't have enough space to receive >> "..productn.." <<")
                                        end
                                    else
                                        doPlayerSendTextMessage(cid,19, "Sorry, you don't have enough capacity to receive >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)")
                                    end
                            end
                    end
                itemr:free()
                if not(result:next()) then
                    break
                end
            end
            result:free()
        end
    return true
end

 

 (y)

Editado por Hologram (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por willks123
      Preciso de ajuda para exibir as categorias do shopping do meu site. Sera que conseguem me ajudar?
       
      Quando entro no SHOP ADMIN para criar ofertas aparecem essas categorias. Porem quando tento adicionar qualquer categoria diferent da ITEM não aparece nada para mudar de CATEGORIA.

       
      Fica assim: Nem aparece as categorias nem os itens mudam a Imagem

       
      Se puderem me ajudar agradeço muito.

      Segue abaixo meus arquivos:
      shopadmin.php
       
      <?PHP if($group_id_of_acc_logged >= $config['site']['access_admin_panel']) { $offertype = $_REQUEST['offer_type']; if((empty($action)) AND (empty($offertype))) { $main_content .= '<br><h2><center><a href="?subtopic=shopadmin&action=addoffer">ADD SHOP OFFER</a><br><a href="?subtopic=shopadmin&action=points">ADD POINTS</a></center>'; } if($action == "addoffer"){ $shop_points = stripslashes(ucwords(strtolower(trim($_REQUEST['shop_points'])))); $shop_offer_type = stripslashes(trim($_REQUEST['offer_type'])); if(empty($shop_points)) { $main_content .= '<table border="0"><tr><td align="center"><b>Select offer type:</b></td><td><table border="0" ><tr bgcolor="#505050"> <td><font color="white">Item</td><td><font color="white">Item VIP</td><td><font color="white">Container</td><td><font color="white">Pacc</td><td><font color="white">VIP Days</td><td><font color="white">Redskull</td> <td><font color="white">Unban</td><td><font color="white">Changename</td></tr><tr bgcolor="#D4C0A1"><form action="" method="post"> <td align="center"><input type="radio" name="offer_type" value="item" onClick="this.form.submit()"></td></lable> <td align="center"><input type="radio" name="offer_type" value="itemvip" onClick="this.form.submit()"></td></lable> <td align="center"><input type="radio" name="offer_type" value="container" onClick="this.form.submit()"></td> <td align="center"><input type="radio" name="offer_type" value="pacc" onClick="this.form.submit()"></td> <td align="center"><input type="radio" name="offer_type" value="vipdays" onClick="this.form.submit()"></td> <td align="center"><input type="radio" name="offer_type" value="redskull" onClick="this.form.submit()"></td> <td align="center"><input type="radio" name="offer_type" value="unban" onClick="this.form.submit()"></td> <td align="center"><input type="radio" name="offer_type" value="changename" onClick="this.form.submit()"></td> </form></tr></table></td></tr>'; $main_content .= '<form action="?subtopic=shopadmin&action=addoffer&offer_type='.$shop_offer_type.'" method="post" ><table border="0"><tr> <td align="center" ><b>Points:</b></td><td><input type="textbox" name="shop_points" maxlenght="7" style="width: 70px"></td></tr>'; if($_REQUEST['offer_type'] == 'container'){ $main_content .= '<tr><td align="center" ><b>Container ID:</b></td> <td><input type="text" name="shop_itemid1" maxlenght="7" style="width: 70px" ></td></tr> <tr><td align="center" ><b>Count Container:</b></td> <td><input type="text" name="shop_count1" maxlenght="7" style="width: 70px" ></td></tr> <tr><td align="center" ><b>Item ID:</b></td> <td><input type="text" name="shop_itemid2" maxlenght="7" style="width: 70px" ></td></tr> <tr><td align="center" ><b>Count Item:</b></td> <td><input type="text" name="shop_count2" maxlenght="7" style="width: 70px" ></td></tr>'; } if($_REQUEST['offer_type'] == 'item'){ $main_content .= '<tr><td align="center"><b>Item ID:</b></td> <td><input type="text" name="shop_itemid1" maxlenght="7" style="width: 70px" ></td></tr> <tr><td align="center"><b>Item Count:</b></td> <td><input type="text" name="shop_count1" maxlenght="7" style="width: 70px" ></td></tr>'; } if($_REQUEST['offer_type'] == 'itemvip'){ $main_content .= '<tr><td align="center"><b>Item ID:</b></td> <td><input type="text" name="shop_itemid1" maxlenght="7" style="width: 70px" ></td></tr> <tr><td align="center"><b>Item Count:</b></td> <td><input type="text" name="shop_count1" maxlenght="7" style="width: 70px" ></td></tr>'; } if($_REQUEST['offer_type'] == 'pacc'){ $main_content .= '<tr><td align="center" ><b>Days:</b></td> <td><input type="text" name="shop_count1" maxlenght="7" style="width: 70px" ></td></tr>'; } if($_REQUEST['offer_type'] == 'vipdays'){ $main_content .= '<tr><td align="center" ><b>Days:</b></td> <td><input type="text" name="shop_count1" maxlenght="7" style="width: 70px" ></td></tr>'; } $main_content .= '<tr><td align="center" ><b>Offer Description:</b></td> <td ><textarea name="shop_offer_description" rows="2" cols="35"></textarea></td></tr> <tr><td align="center" ><b>Offer Name:</b></td> <td><input type="text" name="shop_offer_name" maxlenght="40" style="width: 200px" ></td></tr></table> <input name="submit" type="submit" value="Submit" /></form> <form action="?subtopic=shopadmin&action=addoffer" method="post" > <input name="submit" type="submit" value="Reset" /></form>'; $main_content .= '<form action="?subtopic=shopadmin" method="post" ><input name="submit" type="submit" value="Back" title="Back"/></form>'; } else { $shop_points = stripslashes(trim($_POST['shop_points'])); $shop_offer_type = stripslashes(trim($_REQUEST['offer_type'])); $shop_itemid1 = stripslashes(trim($_POST['shop_itemid1'])); $shop_count1 = stripslashes(trim($_POST['shop_count1'])); $shop_itemid2 = stripslashes(trim($_POST['shop_itemid2'])); $shop_count2 = stripslashes(trim($_POST['shop_count2'])); $shop_offer_description = stripslashes(trim($_POST['shop_offer_description'])); $shop_offer_name = stripslashes(trim($_POST['shop_offer_name'])); $SQL->query('INSERT INTO `z_shop_offer` (id, points, itemid1, count1, itemid2, count2, offer_type, offer_description, offer_name, pid) VALUES (NULL, '.$SQL->quote($shop_points).', '.$SQL->quote($shop_itemid1).', '.$SQL->quote($shop_count1).', '.$SQL->quote($shop_itemid2).', '.$SQL->quote($shop_count2).', '.$SQL->quote($shop_offer_type).', '.$SQL->quote($shop_offer_description).', '.$SQL->quote($shop_offer_name).', 0)'); $main_content .= '<center><h2><font color="red">Added to Shop:</font></h2></center><hr/> <tr><td align="center" ><b>Points:</b></td> <td>'.$shop_points.'</td></tr><br>'; if($shop_offer_type == 'container'){ $main_content .= '<tr><td align="center" ><b>Container ID:</b></td> <td>'.$shop_itemid1.'</td></tr><br> <tr><td align="center" ><b>Count Container:</b></td> <td>'.$shop_count1.'</td></tr><br> <tr><td align="center" ><b> Item ID (in Container):</b></td> <td>'.$shop_itemid2.'</td></tr><br> <tr><td align="center" ><b>Count Item (in Container):</b></td> <td>'.$shop_count2.'</td></tr><br>'; } if ($shop_offer_type == 'item'){ $main_content .= '<tr><td align="center" ><b>Item ID:</b></td> <td>'.$shop_itemid1.'</td></tr><br> <tr><td align="center" ><b>Count Item:</b></td> <td>'.$shop_count1.'</td></tr><br>'; } if ($shop_offer_type == 'itemvip'){ $main_content .= '<tr><td align="center" ><b>Item ID:</b></td> <td>'.$shop_itemid1.'</td></tr><br> <tr><td align="center" ><b>Count Item:</b></td> <td>'.$shop_count1.'</td></tr><br>'; } if ($shop_offer_type == 'pacc'){ $main_content .= '<tr><td align="center" ><b>Days:</b></td> <td>'.$shop_count1.'</td></tr><br>'; } if ($shop_offer_type == 'vipdays'){ $main_content .= '<tr><td align="center" ><b>Days:</b></td> <td>'.$shop_count1.'</td></tr><br>'; } $main_content .= '<tr><td align="center" ><b>Offer Type:</b></td> <td>'.$shop_offer_type.'</td></tr><br> <tr><td align="center" ><b>Offer Description:</b></td> <td>'.$shop_offer_description.'</td></tr><br> <tr><td align="center" ><b>Offer Name:</b></td> <td>'.$shop_offer_name.'</td></tr> <br><form action="?subtopic=shopadmin&action=addoffer" method="post" ><input name="submit" type="submit" value="Back" title="Back"/></form>'; } } if($action == "viewoffer") { $items = simplexml_load_file($config['site']['server_path'].'/data/items/items.xml') or die('<b>Could not load items!</b>'); foreach($items->item as $v) $itemList[(int)$v['id']] = $v['name']; $order = array("id" => "id", "points" => "points", "offer_type" => "offer_type", "itemid1" => "itemid1", "itemid2" => "itemid2"); $main_content .= '<center><table width="550"><tr BGCOLOR="#505050"><td width="5"><font color="white"><a href="index.php?subtopic=shopadmin&action=viewoffer&order=' . getOrder($order, 'order', 'id') . '" class=white>ID:</td><td width="5"><font color="white"><a href="index.php?subtopic=shopadmin&action=viewoffer&order=' . getOrder($order, 'order', 'points') . '" class=white>Points:</td><td width="7"> <font color="white"><a href="index.php?subtopic=shopadmin&action=viewoffer&order=' . getOrder($order, 'order', 'itemid1') . '" class=white>Item ID:</td><td width="5"><font color="white">Count:</td><td width="7"><center><font color="white"><a href="index.php?subtopic=shopadmin&action=viewoffer&order=' . getOrder($order, 'order', 'itemid2') . '" class=white>Container ID:</center></td><td width="5"><font color="white">Count:</td><td width="7"><font color="white"><a href="index.php?subtopic=shopadmin&action=viewoffer&order=' . getOrder($order, 'order', 'offer_type') . '" class=white>Offer Type:</td> <td width="85"><font color="white">Offer Description:</td><td width="30"><font color="white">Offer Name:</td><td width="30"></td></tr>'; $shopoffers = $SQL->query('SELECT id, points, itemid1, count1, itemid2, count2, offer_type, offer_description, offer_name, pid FROM z_shop_offer ' . makeOrder($order, 'order', 'id')); foreach($shopoffers as $shop) { $main_content .= '</B><tr BGCOLOR="#D4C0A1"><td align="center">'.$shop['id'].'<td align="center">'.$shop['points'].'</td>'; if($shop['itemid1'] == "0") { $main_content .= '<td align="center">'.$shop['itemid1'].'<br></td>'; } else { $main_content .= '<td align="center">'.$shop['itemid1'].'<br>(' . $itemList[(int)$shop['itemid1']] . ')</td>'; } $main_content .= '<td align="center">'.$shop['count1'].'</td>'; if($shop['itemid2'] == "0") { $main_content .= '<td align="center">'.$shop['itemid2'].'</td>'; } else { $main_content .= '<td align="center">'.$shop['itemid2'].'<br>(' . $itemList[(int)$shop['itemid2']] . ')</td>'; } $main_content .= '<td align="center">'.$shop['count2'].'</td><td align="center">'.$shop['offer_type'].'</td><td align="left">'.$shop['offer_description'].'</td><td align="left">'.$shop['offer_name'].'</td>'; $main_content .= '<td align="center"><a href="?subtopic=shopadmin&action=editoffer&id='.$shop['id'].'"><img src="'.$layout_name.'/images/news/edit_news.png" border="0"></a><br><br><a href="?subtopic=shopadmin&action=deleteoffer&id='.$shop['id'].'"><img src="'.$layout_name.'/images/news/delete_news.png" border="0"></a></td>'; } $main_content .= '</td></tr></TABLE><br><form action="?subtopic=shopadmin" method="post" ><input name="submit" type="submit" value="Back" title="Back"/></form>'; } if($action == "deleteoffer") { $id = (int) $_REQUEST['id']; $SQL->query('DELETE FROM z_shop_offer WHERE id = '.$id.' LIMIT 1;'); $main_content .= '<center>Shop offer has been deleted.</center><br><center><form action="?subtopic=shopadmin&action=viewoffer" method="post" ><input name="submit" type="submit" value="Back" title="Back"/></form></center>'; } if($action == "editoffer") { $id = (int) $_REQUEST['id']; $shopoffers = $SQL->query('SELECT * FROM z_shop_offer WHERE id = '.$id.' LIMIT 1;'); foreach($shopoffers as $shop) { $main_content .= '<form action="?subtopic=shopadmin&action=edited&id='.$id.'" method="post" ><table border="0"><tr><td align="center" ><b>Points:</b></td> <td><input type="textbox" name="shop_points" maxlenght="7" value="'.$shop['points'].'" style="width: 70px"></td></tr>'; if($shop['offer_type'] == 'container'){ $main_content .= '<tr><td align="center" ><b>Container ID:</b></td> <td><input type="text" name="shop_itemid1" maxlenght="7" value="'.$shop['itemid1'].'" style="width: 70px" ></td></tr> <tr><td align="center" ><b>Count Container:</b></td> <td><input type="text" name="shop_count1" maxlenght="7" value="'.$shop['count1'].'" style="width: 70px" ></td></tr> <tr><td align="center" ><b>Item ID:</b></td> <td><input type="text" name="shop_itemid2" maxlenght="7" value="'.$shop['itemid2'].'" style="width: 70px" ></td></tr> <tr><td align="center" ><b>Count Item:</b></td> <td><input type="text" name="shop_count2" maxlenght="7" value="'.$shop['count2'].'" style="width: 70px" ></td></tr>'; } if($shop['offer_type'] == 'item'){ $main_content .= '<tr><td align="center"><b>Item ID:</b></td> <td><input type="text" name="shop_itemid1" maxlenght="7" value="'.$shop['itemid1'].'" style="width: 70px" ></td></tr> <tr><td align="center"><b>Item Count:</b></td> <td><input type="text" name="shop_count1" maxlenght="7" value="'.$shop['count1'].'" style="width: 70px" ></td></tr>'; } if($shop['offer_type'] == 'itemvip'){ $main_content .= '<tr><td align="center"><b>Item ID:</b></td> <td><input type="text" name="shop_itemid1" maxlenght="7" value="'.$shop['itemid1'].'" style="width: 70px" ></td></tr> <tr><td align="center"><b>Item Count:</b></td> <td><input type="text" name="shop_count1" maxlenght="7" value="'.$shop['count1'].'" style="width: 70px" ></td></tr>'; } if($shop['offer_type'] == 'pacc'){ $main_content .= '<tr><td align="center" ><b>Days:</b></td> <td><input type="text" name="shop_count1" maxlenght="7" style="width: 70px" ></td></tr>'; } if($shop['offer_type'] == 'vipdays'){ $main_content .= '<tr><td align="center" ><b>Days:</b></td> <td><input type="text" name="shop_count1" maxlenght="7" style="width: 70px" ></td></tr>'; } $main_content .= '<tr><td align="center" ><b>Offer Type:</b></td> <td><input type="text" name="shop_offer_type" value="'.$shop['offer_type'].'" maxlenght="40" style="width: 200px" ></td></tr> <tr><td align="center" ><b>Offer Description:</b></td> <td ><textarea name="shop_offer_description" rows="2" cols="35">'.$shop['offer_description'].'</textarea></td></tr> <tr><td align="center" ><b>Offer Name:</b></td> <td><input type="text" name="shop_offer_name" value="'.$shop['offer_name'].'" maxlenght="40" style="width: 200px" ></td></tr> <tr><td><input name="submit" type="submit" value="Submit" /></form></td><td></td></tr></table>'; $main_content .= '<form action="?subtopic=shopadmin&action=viewoffer" method="post" ><input name="submit" type="submit" value="Back" title="Back"/></form>'; } } if($action == "edited") { $id = (int) $_REQUEST['id']; $shop_points = stripslashes(trim($_POST['shop_points'])); $shop_offer_type = stripslashes(trim($_POST['shop_offer_type'])); $shop_itemid1 = stripslashes(trim($_POST['shop_itemid1'])); $shop_count1 = stripslashes(trim($_POST['shop_count1'])); $shop_itemid2 = stripslashes(trim($_POST['shop_itemid2'])); $shop_count2 = stripslashes(trim($_POST['shop_count2'])); $shop_offer_description = stripslashes(trim($_POST['shop_offer_description'])); $shop_offer_name = stripslashes(trim($_POST['shop_offer_name'])); $SQL->query('UPDATE `z_shop_offer` SET `points` = '.$shop_points.', `itemid1` = '.$SQL->quote($shop_itemid1).', `count1` = '.$SQL->quote($shop_count1).', `itemid2` = '.$SQL->quote($shop_itemid2).', `count2` = '.$SQL->quote($shop_count2).', `offer_type` = '.$SQL->quote($shop_offer_type).', `offer_description` = '.$SQL->quote($shop_offer_description).', `offer_name` = '.$SQL->quote($shop_offer_name).' WHERE `id` = '.$id.';'); $main_content .= '<b><center>Shop offer successfully edited.</b><br><br><form action="?subtopic=shopadmin&action=viewoffer" method="post" ><input name="submit" type="submit" value="Back" title="Back"/></form><meta http-equiv="refresh" content="1;url=/?subtopic=shopadmin&action=viewoffer" />'; } if($action == "points") { $player = stripslashes(ucwords(strtolower(trim($_REQUEST['character'])))); $points = $_POST['points']; if(empty($player)) { $main_content .= '<form action="?subtopic=shopadmin&action=points" method="post"><B>Enter Character Name:</B><input type="textbox" name="character"><br> <B>Enter Points Amount:</B><input type="textbox" name="points"><br><br><input type="submit" value="Submit"> </form></center><form action="?subtopic=shopadmin" method="post" ><input name="submit" type="submit" value="Back" title="Back"/></form>'; } else { $player_data = $SQL->query("SELECT * FROM `players` WHERE `name` = '".$player."';")->fetch(); $SQL->query("UPDATE `accounts` SET `premium_points` = `premium_points` + '".$points."' WHERE `id` = '".$player_data['account_id']."'"); $SQL->query("UPDATE `accounts` SET `backup_points` = `backup_points` + '".$points."' WHERE `id` = '".$player_data['account_id']."'"); $main_content .= '<b><center>'.$points.' Premium Points added to the account of <i>'.$player.'</i> !</b></center><br> <form action="?subtopic=shopadmin" method="post" ><input name="submit" type="submit" value="Back" title="Back"/></form>'; } } } else { $main_content .= 'Sorry, you have not the rights to access this page.'; } ?>
      shopsystem.php
      <?php if(!defined('INITIALIZED')) exit; if($config['site']['shop_system']) { if($logged) { $user_premium_points = $account_logged->getCustomField('premium_points'); } else { $user_premium_points = 'Login first'; } function getItemByID($id) { $id = (int) $id; $SQL = $GLOBALS['SQL']; $data = $SQL->query('SELECT * FROM '.$SQL->tableName('z_shop_offer').' WHERE '.$SQL->fieldName('id').' = '.$SQL->quote($id).';')->fetch(); if($data['offer_type'] == 'item') { $offer['id'] = $data['id']; $offer['type'] = $data['offer_type']; $offer['item_id'] = $data['itemid1']; $offer['item_count'] = $data['count1']; $offer['points'] = $data['points']; $offer['description'] = $data['offer_description']; $offer['name'] = $data['offer_name']; } elseif($data['offer_type'] == 'mount') { $offer['id'] = $data['id']; $offer['type'] = $data['offer_type']; $offer['item_id'] = $data['itemid1']; $offer['item_count'] = $data['count1']; $offer['points'] = $data['points']; $offer['description'] = $data['offer_description']; $offer['name'] = $data['offer_name']; } elseif($data['offer_type'] == 'addon') { $offer['id'] = $data['id']; $offer['type'] = $data['offer_type']; $offer['item_id'] = $data['itemid1']; $offer['item_count'] = $data['count1']; $offer['points'] = $data['points']; $offer['description'] = $data['offer_description']; $offer['name'] = $data['offer_name']; } elseif($data['offer_type'] == 'mage') { $offer['id'] = $data['id']; $offer['type'] = $data['offer_type']; $offer['item_id'] = $data['itemid1']; $offer['item_count'] = $data['count1']; $offer['points'] = $data['points']; $offer['description'] = $data['offer_description']; $offer['name'] = $data['offer_name']; } elseif($data['offer_type'] == 'pala') { $offer['id'] = $data['id']; $offer['type'] = $data['offer_type']; $offer['item_id'] = $data['itemid1']; $offer['item_count'] = $data['count1']; $offer['points'] = $data['points']; $offer['description'] = $data['offer_description']; $offer['name'] = $data['offer_name']; } elseif($data['offer_type'] == 'kina') { $offer['id'] = $data['id']; $offer['type'] = $data['offer_type']; $offer['item_id'] = $data['itemid1']; $offer['item_count'] = $data['count1']; $offer['points'] = $data['points']; $offer['description'] = $data['offer_description']; $offer['name'] = $data['offer_name']; } elseif($data['offer_type'] == 'deco') { $offer['id'] = $data['id']; $offer['type'] = $data['offer_type']; $offer['item_id'] = $data['itemid1']; $offer['item_count'] = $data['count1']; $offer['points'] = $data['points']; $offer['description'] = $data['offer_description']; $offer['name'] = $data['offer_name']; } elseif($data['offer_type'] == 'container') { $offer['id'] = $data['id']; $offer['type'] = $data['offer_type']; $offer['item_id'] = $data['itemid1']; $offer['item_count'] = $data['count1']; $offer['points'] = $data['points']; $offer['description'] = $data['offer_description']; $offer['name'] = $data['offer_name']; } return $offer; } function getOfferArray() { $offer_list = $GLOBALS['SQL']->query('SELECT * FROM '.$GLOBALS['SQL']->tableName('z_shop_offer').';'); $i_item = 0; $i_mount = 0; $i_addon = 0; $i_mage = 0; $i_pala = 0; $i_kina = 0; $i_deco = 0; $i_container = 0; while($data = $offer_list->fetch()) { if($data['offer_type'] == 'item') { $offer_array['item'][$i_item]['id'] = $data['id']; $offer_array['item'][$i_item]['item_id'] = $data['itemid1']; $offer_array['item'][$i_item]['item_count'] = $data['count1']; $offer_array['item'][$i_item]['points'] = $data['points']; $offer_array['item'][$i_item]['description'] = $data['offer_description']; $offer_array['item'][$i_item]['name'] = $data['offer_name']; $i_item++; } elseif($data['offer_type'] == 'mount') { $offer_array['mount'][$i_mount]['id'] = $data['id']; $offer_array['mount'][$i_mount]['container_id'] = $data['itemid1']; $offer_array['mount'][$i_mount]['container_count'] = $data['count1']; $offer_array['mount'][$i_mount]['item_id'] = $data['itemid1']; $offer_array['mount'][$i_mount]['item_count'] = $data['count2']; $offer_array['mount'][$i_mount]['points'] = $data['points']; $offer_array['mount'][$i_mount]['description'] = $data['offer_description']; $offer_array['mount'][$i_mount]['name'] = $data['offer_name']; $i_mount++; } elseif($data['offer_type'] == 'addon') { $offer_array['addon'][$i_addon]['id'] = $data['id']; $offer_array['addon'][$i_addon]['container_id'] = $data['itemid1']; $offer_array['addon'][$i_addon]['container_count'] = $data['count1']; $offer_array['addon'][$i_addon]['item_id'] = $data['itemid1']; $offer_array['addon'][$i_addon]['item_count'] = $data['count2']; $offer_array['addon'][$i_addon]['points'] = $data['points']; $offer_array['addon'][$i_addon]['description'] = $data['offer_description']; $offer_array['addon'][$i_addon]['name'] = $data['offer_name']; $i_addon++; } elseif($data['offer_type'] == 'mage') { $offer_array['mage'][$i_mage]['id'] = $data['id']; $offer_array['mage'][$i_mage]['container_id'] = $data['itemid1']; $offer_array['mage'][$i_mage]['container_count'] = $data['count1']; $offer_array['mage'][$i_mage]['item_id'] = $data['itemid1']; $offer_array['mage'][$i_mage]['item_count'] = $data['count2']; $offer_array['mage'][$i_mage]['points'] = $data['points']; $offer_array['mage'][$i_mage]['description'] = $data['offer_description']; $offer_array['mage'][$i_mage]['name'] = $data['offer_name']; $i_mage++; } elseif($data['offer_type'] == 'pala') { $offer_array['pala'][$i_pala]['id'] = $data['id']; $offer_array['pala'][$i_pala]['container_id'] = $data['itemid1']; $offer_array['pala'][$i_pala]['container_count'] = $data['count1']; $offer_array['pala'][$i_pala]['item_id'] = $data['itemid1']; $offer_array['pala'][$i_pala]['item_count'] = $data['count2']; $offer_array['pala'][$i_pala]['points'] = $data['points']; $offer_array['pala'][$i_pala]['description'] = $data['offer_description']; $offer_array['pala'][$i_pala]['name'] = $data['offer_name']; $i_pala++; } elseif($data['offer_type'] == 'kina') { $offer_array['kina'][$i_kina]['id'] = $data['id']; $offer_array['kina'][$i_kina]['container_id'] = $data['itemid1']; $offer_array['kina'][$i_kina]['container_count'] = $data['count1']; $offer_array['kina'][$i_kina]['item_id'] = $data['itemid1']; $offer_array['kina'][$i_kina]['item_count'] = $data['count2']; $offer_array['kina'][$i_kina]['points'] = $data['points']; $offer_array['kina'][$i_kina]['description'] = $data['offer_description']; $offer_array['kina'][$i_kina]['name'] = $data['offer_name']; $i_kina++; } elseif($data['offer_type'] == 'deco') { $offer_array['deco'][$i_deco]['id'] = $data['id']; $offer_array['deco'][$i_deco]['container_id'] = $data['itemid1']; $offer_array['deco'][$i_deco]['container_count'] = $data['count1']; $offer_array['deco'][$i_deco]['item_id'] = $data['itemid1']; $offer_array['deco'][$i_deco]['item_count'] = $data['count2']; $offer_array['deco'][$i_deco]['points'] = $data['points']; $offer_array['deco'][$i_deco]['description'] = $data['offer_description']; $offer_array['deco'][$i_deco]['name'] = $data['offer_name']; $i_deco++; } elseif($data['offer_type'] == 'container') { $offer_array['container'][$i_container]['id'] = $data['id']; $offer_array['container'][$i_container]['container_id'] = $data['itemid1']; $offer_array['container'][$i_container]['container_count'] = $data['count1']; $offer_array['container'][$i_container]['item_id'] = $data['itemid2']; $offer_array['container'][$i_container]['item_count'] = $data['count2']; $offer_array['container'][$i_container]['points'] = $data['points']; $offer_array['container'][$i_container]['description'] = $data['offer_description']; $offer_array['container'][$i_container]['name'] = $data['offer_name']; $i_container++; } } return $offer_array; } if(($action == '') or ($action == 'item') or ($action == 'mount') or ($action == 'addon') or ($action == 'container') or ($action == 'mage') or ($action == 'pala') or ($action == 'kina') or ($action == 'deco')) { unset($_SESSION['viewed_confirmation_page']); $offer_list = getOfferArray(); if(empty($action)) { if(count($offer_list['item']) > 0) $action = 'item'; elseif(count($offer_list['mount']) > 0) $action = 'mount'; elseif(count($offer_list['addon']) > 0) $action = 'addon'; elseif(count($offer_list['mage']) > 0) $action = 'mage'; elseif(count($offer_list['pala']) > 0) $action = 'pala'; elseif(count($offer_list['kina']) > 0) $action = 'kina'; elseif(count($offer_list['deco']) > 0) $action = 'deco'; elseif(count($offer_list['container']) > 0) $action = 'container'; } function selectcolor($value) { if($GLOBALS['action'] == $value) return '#505050; color: #FFFFFF'; else return '#303030; color: #aaaaaa'; } if((count($offer_list['item']) > 0) or (count($offer_list['mount']) > 0) or (count($offer_list['addon']) > 0) or (count($offer_list['container']) > 0) or (count($offer_list['mage']) > 0) or (count($offer_list['pala']) > 0) or (count($offer_list['kina']) > 0) or (count($offer_list['deco']) > 0)) //show list of items offers if((count($offer_list['item']) > 0) and ($action == 'item')) { $main_content .= '<table border="0" cellpadding="4" cellspacing="1" width="100%"><tr bgcolor="'.$config['site']['vdarkborder'].'"><td width="8%" align="center" class="white"><b>Points</b></td><td width="9%" align="center" class="white"><b>Picture</b></td><td width="350" align="left" class="white"><b>Description</b></td><td width="100" align="center" class="white"><b>Select product</b></td></tr>'; foreach($offer_list['item'] as $item) { if(!is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<tr bgcolor="'.$bgcolor.'"><td align="center"><b>'.$item['points'].'</b></td><td align="center"><img src="images/items/1968.gif"></td><td><b>'.htmlspecialchars($item['name']).'</b><br />'.htmlspecialchars($item['description']).'</td><td align="center">'; if(!$logged) { $main_content .= '<b>Login to buy</b>'; } else { $main_content .= '<form action="?subtopic=shopsystem&action=select_player" method="POST" name="itemform_'.$item['id'].'"><input type="hidden" name="buy_id" value="'.$item['id'].'"><div class="navibutton"><a href="" onClick="itemform_'.$item['id'].'.submit();return false;">BUY</a></div></form>'; } $main_content .= '</td></tr>'; } $main_content .= '</table>'; } //show list of mount offers if((count($offer_list['mount']) > 0) and ($action == 'mount')) { $main_content .= '<table border="0" cellpadding="4" cellspacing="1" width="100%"><tr bgcolor="'.$config['site']['vdarkborder'].'"><td width="8%" align="center" class="white"><b>Points</b></td><td width="9%" align="center" class="white"><b>Picture</b></td><td width="350" align="left" class="white"><b>Description</b></td><td width="250" align="center" class="white"><b>Select product</b></td></tr>'; foreach($offer_list['mount'] as $mount) { if(!is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<tr bgcolor="'.$bgcolor.'"><td align="center"><b>'.$mount['points'].'</b></td><td align="center"><img src="' . $config['site']['item_images_url'] . $mount['id'] . $config['site']['item_images_extension'] . '"></td><td><b>'.htmlspecialchars($mount['name']).'</b> ('.$mount['points'].' points)<br />'.htmlspecialchars($mount['description']).'</td><td align="center">'; if(!$logged) { $main_content .= '<b>Login to buy</b>'; } else { $main_content .= '<form action="?subtopic=shopsystem&action=select_player" method="POST" name="itemform_'.$mount['id'].'"><input type="hidden" name="buy_id" value="'.$mount['id'].'"><div class="navibutton"><a href="" onClick="itemform_'.$mount['id'].'.submit();return false;">BUY</a></div></form>'; } $main_content .= '</td></tr>'; } $main_content .= '</table>'; } //show list of addon offers if((count($offer_list['addon']) > 0) and ($action == 'addon')) { $main_content .= '<table border="0" cellpadding="4" cellspacing="1" width="100%"><tr bgcolor="'.$config['site']['vdarkborder'].'"><td width="8%" align="center" class="white"><b>Points</b></td><td width="9%" align="center" class="white"><b>Picture</b></td><td width="350" align="left" class="white"><b>Description</b></td><td width="250" align="center" class="white"><b>Select product</b></td></tr>'; foreach($offer_list['addon'] as $addon) { if(!is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<tr bgcolor="'.$bgcolor.'"><td align="center"><b>'.$addon['points'].'</b></td><td align="center"><img src="' . $config['site']['item_images_url'] . $addon['id'] . $config['site']['item_images_extension'] . '"></td><td><b>'.htmlspecialchars($addon['name']).'</b> ('.$addon['points'].' points)<br />'.htmlspecialchars($addon['description']).'</td><td align="center">'; if(!$logged) { $main_content .= '<b>Login to buy</b>'; } else { $main_content .= '<form action="?subtopic=shopsystem&action=select_player" method="POST" name="itemform_'.$addon['id'].'"><input type="hidden" name="buy_id" value="'.$addon['id'].'"><div class="navibutton"><a href="" onClick="itemform_'.$addon['id'].'.submit();return false;">BUY</a></div></form>'; } $main_content .= '</td></tr>'; } $main_content .= '</table>'; } //show list of mage offers if((count($offer_list['mage']) > 0) and ($action == 'mage')) { $main_content .= '<table border="0" cellpadding="4" cellspacing="1" width="100%"><tr bgcolor="'.$config['site']['vdarkborder'].'"><td width="8%" align="center" class="white"><b>Points</b></td><td width="9%" align="center" class="white"><b>Picture</b></td><td width="350" align="left" class="white"><b>Description</b></td><td width="250" align="center" class="white"><b>Select product</b></td></tr>'; foreach($offer_list['mage'] as $mage) { if(!is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<tr bgcolor="'.$bgcolor.'"><td align="center"><b>'.$mage['points'].'</b></td><td align="center"><img src="' . $config['site']['item_images_url'] . $mage['item_id'] . $config['site']['item_images_extension'] . '"></td><td><b>'.htmlspecialchars($mage['name']).'</b> ('.$mage['points'].' points)<br />'.htmlspecialchars($mage['description']).'</td><td align="center">'; if(!$logged) { $main_content .= '<b>Login to buy</b>'; } else { $main_content .= '<form action="?subtopic=shopsystem&action=select_player" method="POST" name="itemform_'.$mage['id'].'"><input type="hidden" name="buy_id" value="'.$mage['id'].'"><div class="navibutton"><a href="" onClick="itemform_'.$mage['id'].'.submit();return false;">BUY</a></div></form>'; } $main_content .= '</td></tr>'; } $main_content .= '</table>'; } //show list of pala offers if((count($offer_list['pala']) > 0) and ($action == 'pala')) { $main_content .= '<table border="0" cellpadding="4" cellspacing="1" width="100%"><tr bgcolor="'.$config['site']['vdarkborder'].'"><td width="8%" align="center" class="white"><b>Points</b></td><td width="9%" align="center" class="white"><b>Picture</b></td><td width="350" align="left" class="white"><b>Description</b></td><td width="250" align="center" class="white"><b>Select product</b></td></tr>'; foreach($offer_list['pala'] as $pala) { if(!is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<tr bgcolor="'.$bgcolor.'"><td align="center"><b>'.$pala['points'].'</b></td><td align="center"><img src="' . $config['site']['item_images_url'] . $pala['item_id'] . $config['site']['item_images_extension'] . '"></td><td><b>'.htmlspecialchars($pala['name']).'</b> ('.$pala['points'].' points)<br />'.htmlspecialchars($pala['description']).'</td><td align="center">'; if(!$logged) { $main_content .= '<b>Login to buy</b>'; } else { $main_content .= '<form action="?subtopic=shopsystem&action=select_player" method="POST" name="itemform_'.$pala['id'].'"><input type="hidden" name="buy_id" value="'.$pala['id'].'"><div class="navibutton"><a href="" onClick="itemform_'.$pala['id'].'.submit();return false;">BUY</a></div></form>'; } $main_content .= '</td></tr>'; } $main_content .= '</table>'; } //show list of kina offers if((count($offer_list['kina']) > 0) and ($action == 'kina')) { $main_content .= '<table border="0" cellpadding="4" cellspacing="1" width="100%"><tr bgcolor="'.$config['site']['vdarkborder'].'"><td width="8%" align="center" class="white"><b>Points</b></td><td width="9%" align="center" class="white"><b>Picture</b></td><td width="350" align="left" class="white"><b>Description</b></td><td width="250" align="center" class="white"><b>Select product</b></td></tr>'; foreach($offer_list['kina'] as $kina) { if(!is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<tr bgcolor="'.$bgcolor.'"><td align="center"><b>'.$kina['points'].'</b></td><td align="center"><img src="' . $config['site']['item_images_url'] . $kina['item_id'] . $config['site']['item_images_extension'] . '"></td><td><b>'.htmlspecialchars($kina['name']).'</b> ('.$kina['points'].' points)<br />'.htmlspecialchars($kina['description']).'</td><td align="center">'; if(!$logged) { $main_content .= '<b>Login to buy</b>'; } else { $main_content .= '<form action="?subtopic=shopsystem&action=select_player" method="POST" name="itemform_'.$kina['id'].'"><input type="hidden" name="buy_id" value="'.$kina['id'].'"><div class="navibutton"><a href="" onClick="itemform_'.$kina['id'].'.submit();return false;">BUY</a></div></form>'; } $main_content .= '</td></tr>'; } $main_content .= '</table>'; } //show list of kina offers if((count($offer_list['deco']) > 0) and ($action == 'deco')) { $main_content .= '<table border="0" cellpadding="4" cellspacing="1" width="100%"><tr bgcolor="'.$config['site']['vdarkborder'].'"><td width="8%" align="center" class="white"><b>Points</b></td><td width="9%" align="center" class="white"><b>Picture</b></td><td width="350" align="left" class="white"><b>Description</b></td><td width="250" align="center" class="white"><b>Select product</b></td></tr>'; foreach($offer_list['deco'] as $deco) { if(!is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<tr bgcolor="'.$bgcolor.'"><td align="center"><b>'.$deco['points'].'</b></td><td align="center"><img src="' . $config['site']['item_images_url'] . $deco['item_id'] . $config['site']['item_images_extension'] . '"></td><td><b>'.htmlspecialchars($deco['name']).'</b> ('.$deco['points'].' points)<br />'.htmlspecialchars($deco['description']).'</td><td align="center">'; if(!$logged) { $main_content .= '<b>Login to buy</b>'; } else { $main_content .= '<form action="?subtopic=shopsystem&action=select_player" method="POST" name="itemform_'.$deco['id'].'"><input type="hidden" name="buy_id" value="'.$deco['id'].'"><div class="navibutton"><a href="" onClick="itemform_'.$deco['id'].'.submit();return false;">BUY</a></div></form>'; } $main_content .= '</td></tr>'; } $main_content .= '</table>'; } //show list of containers offers if((count($offer_list['container']) > 0) and ($action == 'container')) { if(!is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<table border="0" cellpadding="4" cellspacing="1" width="100%"><tr bgcolor="'.$config['site']['vdarkborder'].'"><td width="8%" align="center" class="white"><b>Points</b></td><td width="9%" align="center" class="white"><b>Picture</b></td><td width="350" align="left" class="white"><b>Description</b></td><td width="250" align="center" class="white"><b>Select product</b></td></tr>'; foreach($offer_list['container'] as $container) { $main_content .= '<tr bgcolor="'.$bgcolor.'"><td align="center"><b>'.$container['points'].'</b></td><td align="center"><img src="' . $config['site']['item_images_url'] . $container['item_id'] . $config['site']['item_images_extension'] . '"></td><td><b>'.htmlspecialchars($container['name']).'</b> ('.$container['points'].' points)<br />'.htmlspecialchars($container['description']).'</td><td align="center">'; if(!$logged) { $main_content .= '<b>Login to buy</b>'; } else { $main_content .= '<form action="?subtopic=shopsystem&action=select_player" method="POST" name="contform_'.$container['id'].'"><input type="hidden" name="buy_id" value="'.$container['id'].'"><div class="navibutton"><a href="" onClick="contform_'.$container['id'].'.submit();return false;">BUY</a></div></form>'; } $main_content .= '</td></tr>'; } $main_content .= '</table>'; } //Finish container if((count($offer_list['item']) > 0) or (count($offer_list['mount']) > 0) or (count($offer_list['addon']) > 0) or (count($offer_list['container']) > 0) or (count($offer_list['mage']) > 0) or (count($offer_list['pala']) > 0) or (count($offer_list['kina']) > 0)) { $main_content .= '<table BORDER=0 CELLPaDDING="4" CELLSPaCING="1" style="width:100%;font-weight:bold;text-align:center;"> <tr style="background:#505050;"> <td colspan="3" style="height:px;"></td> </tr> </table>'; } } if($action == 'select_player') { unset($_SESSION['viewed_confirmation_page']); if(!$logged) { $errormessage .= 'Please login first.'; } else { $buy_id = (int) $_REQUEST['buy_id']; if(empty($buy_id)) { $errormessage .= 'Please <a href="?subtopic=shopsystem">select item</a> first.'; } else { $buy_offer = getItemByID($buy_id); if(isset($buy_offer['id'])) //item exist in database { if($user_premium_points >= $buy_offer['points']) { $main_content .= '<table border="0" cellpadding="4" cellspacing="1" width="100%"> <tr bgcolor="'.$config['site']['vdarkborder'].'"><td colspan="2" class="white"><b>Selected Offer</b></td></tr> <tr bgcolor="'.$config['site']['lightborder'].'"><td width="100"><b>Name:</b></td><td width="550">'.htmlspecialchars($buy_offer['name']).'</td></tr> <tr bgcolor="'.$config['site']['darkborder'].'"><td width="100"><b>Description:</b></td><td width="550">'.htmlspecialchars($buy_offer['description']).'</td></tr> </table><br /> <form action="?subtopic=shopsystem&action=confirm_transaction" method="POST"><input type="hidden" name="buy_id" value="'.$buy_id.'"> <table border="0" cellpadding="4" cellspacing="1" width="100%"> <tr bgcolor="'.$config['site']['vdarkborder'].'"><td colspan="2" class="white"><b>Give item to player from your account</b></td></tr> <tr bgcolor="'.$config['site']['lightborder'].'"><td width="110"><b>Name:</b></td><td width="550"><select name="buy_name">'; $players_from_logged_acc = $account_logged->getPlayersList(); if(count($players_from_logged_acc) > 0) { foreach($players_from_logged_acc as $player) { $main_content .= '<option>'.htmlspecialchars($player->getName()).'</option>'; } } else { $main_content .= 'You don\'t have any character on your account.'; } $main_content .= '</select>&nbsp;<input type="submit" value="Give"></td></tr> </table> </form><br /><form action="?subtopic=shopsystem&action=confirm_transaction" method="POST"><input type="hidden" name="buy_id" value="'.$buy_id.'"> <table border="0" cellpadding="4" cellspacing="1" width="100%"> <tr bgcolor="'.$config['site']['vdarkborder'].'"><td colspan="2" class="white"><b>Give item to other player</b></td></tr> <tr bgcolor="'.$config['site']['lightborder'].'"><td width="110"><b>To player:</b></td><td width="550"><input type="text" name="buy_name"> - name of player</td></tr> <tr bgcolor="'.$config['site']['darkborder'].'"><td width="110"><b>From:</b></td><td width="550"><input type="text" name="buy_from">&nbsp;<input type="submit" value="Give"> - your nick, \'empty\' = Anonymous</td></tr> </table><br /> </form>'; } else { $errormessage .= 'For this item you need <b>'.$buy_offer['points'].'</b> points. You have only <b>'.$user_premium_points.'</b> premium points. Please <a href="?subtopic=shopsystem">select other item</a> or buy premium points.'; } } else { $errormessage .= 'Offer with ID <b>'.$buy_id.'</b> doesn\'t exist. Please <a href="?subtopic=shopsystem">select item</a> again.'; } } } if(!empty($errormessage)) { $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=left CLASS=white><B>Informations</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['lightborder'].'" ALIGN=left><b>'.$errormessage.'</b></TD></TR> </table>'; } } elseif($action == 'confirm_transaction') { if(!$logged) { $errormessage .= 'Please login first.'; } else { $buy_id = (int) $_POST['buy_id']; $buy_name = trim($_POST['buy_name']); $buy_from = trim($_POST['buy_from']); if(empty($buy_from)) { $buy_from = 'Anonymous'; } if(empty($buy_id)) { $errormessage .= 'Please <a href="?subtopic=shopsystem">select item</a> first.'; } else { if(!check_name($buy_from)) { $errormessage .= 'Invalid nick ("from player") format. Please <a href="?subtopic=shopsystem&action=select_player&buy_id='.$buy_id.'">select other name</a> or contact with administrator.'; } else { $buy_offer = getItemByID($buy_id); if(isset($buy_offer['id'])) //item exist in database { if($user_premium_points >= $buy_offer['points']) { if(check_name($buy_name)) { $buy_player = new Player(); $buy_player->find($buy_name); if($buy_player->isLoaded()) { $buy_player_account = $buy_player->getAccount(); if($_SESSION['viewed_confirmation_page'] == 'yes' && $_POST['buy_confirmed'] == 'yes') { if($buy_offer['type'] == 'item') { $sql = 'INSERT INTO '.$SQL->tableName('z_ots_comunication').' ('.$SQL->fieldName('id').','.$SQL->fieldName('name').','.$SQL->fieldName('type').','.$SQL->fieldName('action').','.$SQL->fieldName('param1').','.$SQL->fieldName('param2').','.$SQL->fieldName('param3').','.$SQL->fieldName('param4').','.$SQL->fieldName('param5').','.$SQL->fieldName('param6').','.$SQL->fieldName('param7').','.$SQL->fieldName('delete_it').') VALUES (NULL, '.$SQL->quote($buy_player->getName()).', '.$SQL->quote('login').', '.$SQL->quote('give_item').', '.$SQL->quote($buy_offer['item_id']).', '.$SQL->quote($buy_offer['item_count']).', '.$SQL->quote('').', '.$SQL->quote('').', '.$SQL->quote('item').', '.$SQL->quote($buy_offer['name']).', '.$SQL->quote($buy_offer['id']).', '.$SQL->quote(1).');'; $SQL->query($sql); $save_transaction = 'INSERT INTO '.$SQL->tableName('z_shop_history_item').' ('.$SQL->fieldName('id').','.$SQL->fieldName('to_name').','.$SQL->fieldName('to_account').','.$SQL->fieldName('from_nick').','.$SQL->fieldName('from_account').','.$SQL->fieldName('price').','.$SQL->fieldName('offer_id').','.$SQL->fieldName('trans_state').','.$SQL->fieldName('trans_start').','.$SQL->fieldName('trans_real').') VALUES ('.$SQL->lastInsertId().', '.$SQL->quote($buy_player->getName()).', '.$SQL->quote($buy_player_account->getId()).', '.$SQL->quote($buy_from).', '.$SQL->quote($account_logged->getId()).', '.$SQL->quote($buy_offer['points']).', '.$SQL->quote($buy_offer['name']).', '.$SQL->quote('wait').', '.$SQL->quote(time()).', '.$SQL->quote(0).');'; $SQL->query($save_transaction); $account_logged->setCustomField('premium_points', $user_premium_points-$buy_offer['points']); $user_premium_points = $user_premium_points - $buy_offer['points']; $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=left CLASS=white><B>Item added!</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['lightborder'].'" ALIGN=left><b>'.htmlspecialchars($buy_offer['name']).'</b> added to player <b>'.htmlspecialchars($buy_player->getName()).'</b> items (he will get this items after relog) for <b>'.$buy_offer['points'].' premium points</b> from your account.<br />Now you have <b>'.$user_premium_points.' premium points</b>.<br /><a href="?subtopic=shopsystem">GO TO MAIN SHOP SITE</a></TD></TR> </table>'; } elseif($buy_offer['type'] == 'mount') { $sql = 'INSERT INTO '.$SQL->tableName('z_ots_comunication').' ('.$SQL->fieldName('id').','.$SQL->fieldName('name').','.$SQL->fieldName('type').','.$SQL->fieldName('action').','.$SQL->fieldName('param1').','.$SQL->fieldName('param2').','.$SQL->fieldName('param3').','.$SQL->fieldName('param4').','.$SQL->fieldName('param5').','.$SQL->fieldName('param6').','.$SQL->fieldName('param7').','.$SQL->fieldName('delete_it').') VALUES (NULL, '.$SQL->quote($buy_player->getName()).', '.$SQL->quote('login').', '.$SQL->quote('give_item').', '.$SQL->quote($buy_offer['item_id']).', '.$SQL->quote($buy_offer['item_count']).', '.$SQL->quote('').', '.$SQL->quote('').', '.$SQL->quote('item').', '.$SQL->quote($buy_offer['name']).', '.$SQL->quote($buy_offer['id']).', '.$SQL->quote(1).');'; $SQL->query($sql); $save_transaction = 'INSERT INTO '.$SQL->tableName('z_shop_history_item').' ('.$SQL->fieldName('id').','.$SQL->fieldName('to_name').','.$SQL->fieldName('to_account').','.$SQL->fieldName('from_nick').','.$SQL->fieldName('from_account').','.$SQL->fieldName('price').','.$SQL->fieldName('offer_id').','.$SQL->fieldName('trans_state').','.$SQL->fieldName('trans_start').','.$SQL->fieldName('trans_real').') VALUES ('.$SQL->lastInsertId().', '.$SQL->quote($buy_player->getName()).', '.$SQL->quote($buy_player_account->getId()).', '.$SQL->quote($buy_from).', '.$SQL->quote($account_logged->getId()).', '.$SQL->quote($buy_offer['points']).', '.$SQL->quote($buy_offer['name']).', '.$SQL->quote('wait').', '.$SQL->quote(time()).', '.$SQL->quote(0).');'; $SQL->query($save_transaction); $account_logged->setCustomField('premium_points', $user_premium_points-$buy_offer['points']); $user_premium_points = $user_premium_points - $buy_offer['points']; $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=left CLASS=white><B>Mount added!</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['lightborder'].'" ALIGN=left><b>'.htmlspecialchars($buy_offer['name']).'</b> added to player <b>'.htmlspecialchars($buy_player->getName()).'</b> items (he will get this items after relog) for <b>'.$buy_offer['points'].' premium points</b> from your account.<br />Now you have <b>'.$user_premium_points.' premium points</b>.<br /><a href="?subtopic=shopsystem">GO TO MAIN SHOP SITE</a></TD></TR> </table>'; } elseif($buy_offer['type'] == 'addon') { $sql = 'INSERT INTO '.$SQL->tableName('z_ots_comunication').' ('.$SQL->fieldName('id').','.$SQL->fieldName('name').','.$SQL->fieldName('type').','.$SQL->fieldName('action').','.$SQL->fieldName('param1').','.$SQL->fieldName('param2').','.$SQL->fieldName('param3').','.$SQL->fieldName('param4').','.$SQL->fieldName('param5').','.$SQL->fieldName('param6').','.$SQL->fieldName('param7').','.$SQL->fieldName('delete_it').') VALUES (NULL, '.$SQL->quote($buy_player->getName()).', '.$SQL->quote('login').', '.$SQL->quote('give_item').', '.$SQL->quote($buy_offer['item_id']).', '.$SQL->quote($buy_offer['item_count']).', '.$SQL->quote('').', '.$SQL->quote('').', '.$SQL->quote('item').', '.$SQL->quote($buy_offer['name']).', '.$SQL->quote($buy_offer['id']).', '.$SQL->quote(1).');'; $SQL->query($sql); $save_transaction = 'INSERT INTO '.$SQL->tableName('z_shop_history_item').' ('.$SQL->fieldName('id').','.$SQL->fieldName('to_name').','.$SQL->fieldName('to_account').','.$SQL->fieldName('from_nick').','.$SQL->fieldName('from_account').','.$SQL->fieldName('price').','.$SQL->fieldName('offer_id').','.$SQL->fieldName('trans_state').','.$SQL->fieldName('trans_start').','.$SQL->fieldName('trans_real').') VALUES ('.$SQL->lastInsertId().', '.$SQL->quote($buy_player->getName()).', '.$SQL->quote($buy_player_account->getId()).', '.$SQL->quote($buy_from).', '.$SQL->quote($account_logged->getId()).', '.$SQL->quote($buy_offer['points']).', '.$SQL->quote($buy_offer['name']).', '.$SQL->quote('wait').', '.$SQL->quote(time()).', '.$SQL->quote(0).');'; $SQL->query($save_transaction); $account_logged->setCustomField('premium_points', $user_premium_points-$buy_offer['points']); $user_premium_points = $user_premium_points - $buy_offer['points']; $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=left CLASS=white><B>Addon added!</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['lightborder'].'" ALIGN=left><b>'.htmlspecialchars($buy_offer['name']).'</b> added to player <b>'.htmlspecialchars($buy_player->getName()).'</b> items (he will get this items after relog) for <b>'.$buy_offer['points'].' premium points</b> from your account.<br />Now you have <b>'.$user_premium_points.' premium points</b>.<br /><a href="?subtopic=shopsystem">GO TO MAIN SHOP SITE</a></TD></TR> </table>'; } elseif($buy_offer['type'] == 'container') { $sql = 'INSERT INTO '.$SQL->tableName('z_ots_comunication').' ('.$SQL->fieldName('id').','.$SQL->fieldName('name').','.$SQL->fieldName('type').','.$SQL->fieldName('action').','.$SQL->fieldName('param1').','.$SQL->fieldName('param2').','.$SQL->fieldName('param3').','.$SQL->fieldName('param4').','.$SQL->fieldName('param5').','.$SQL->fieldName('param6').','.$SQL->fieldName('param7').','.$SQL->fieldName('delete_it').') VALUES (NULL, '.$SQL->quote($buy_player->getName()).', '.$SQL->quote('login').', '.$SQL->quote('give_item').', '.$SQL->quote($buy_offer['item_id']).', '.$SQL->quote($buy_offer['item_count']).', '.$SQL->quote($buy_offer['container_id']).', '.$SQL->quote($buy_offer['container_count']).', '.$SQL->quote('container').', '.$SQL->quote($buy_offer['name']).', '.$SQL->quote($buy_offer['id']).', '.$SQL->quote(1).');'; $SQL->query($sql); $save_transaction = 'INSERT INTO '.$SQL->tableName('z_shop_history_item').' ('.$SQL->fieldName('id').','.$SQL->fieldName('to_name').','.$SQL->fieldName('to_account').','.$SQL->fieldName('from_nick').','.$SQL->fieldName('from_account').','.$SQL->fieldName('price').','.$SQL->fieldName('offer_id').','.$SQL->fieldName('trans_state').','.$SQL->fieldName('trans_start').','.$SQL->fieldName('trans_real').') VALUES ('.$SQL->lastInsertId().', '.$SQL->quote($buy_player->getName()).', '.$SQL->quote($buy_player_account->getId()).', '.$SQL->quote($buy_from).', '.$SQL->quote($account_logged->getId()).', '.$SQL->quote($buy_offer['points']).', '.$SQL->quote($buy_offer['name']).', '.$SQL->quote('wait').', '.$SQL->quote(time()).', '.$SQL->quote(0).');'; $SQL->query($save_transaction); $account_logged->setCustomField('premium_points', $user_premium_points-$buy_offer['points']); $user_premium_points = $user_premium_points - $buy_offer['points']; $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=left CLASS=white><B>Container of items added!</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['lightborder'].'" ALIGN=left><b>'.htmlspecialchars($buy_offer['name']).'</b> added to player <b>'.htmlspecialchars($buy_player->getName()).'</b> items (he will get this container with items after relog) for <b>'.$buy_offer['points'].' premium points</b> from your account.<br />Now you have <b>'.$user_premium_points.' premium points</b>.<br /><a href="?subtopic=shopsystem">GO TO MAIN SHOP SITE</a></TD></TR> </table>'; } } else { $set_session = TRUE; $_SESSION['viewed_confirmation_page'] = 'yes'; $main_content .= '<table border="0" cellpadding="4" cellspacing="1" width="100%"> <tr bgcolor="'.$config['site']['vdarkborder'].'"><td colspan="3" class="white"><b>Confirm Transaction</b></td></tr> <tr bgcolor="'.$config['site']['lightborder'].'"><td width="100"><b>Name:</b></td><td width="550" colspan="2">'. htmlspecialchars($buy_offer['name']).'</td></tr> <tr bgcolor="'.$config['site']['darkborder'].'"><td width="100"><b>Description:</b></td><td width="550" colspan="2">'. htmlspecialchars($buy_offer['description']).'</td></tr> <tr bgcolor="'.$config['site']['lightborder'].'"><td width="100"><b>Cost:</b></td><td width="550" colspan="2"><b>'. htmlspecialchars($buy_offer['points']).' premium points</b> from your account</td></tr> <tr bgcolor="'.$config['site']['darkborder'].'"><td width="100"><b>For Player:</b></td><td width="550" colspan="2"><font color="red">'.htmlspecialchars($buy_player->getName()).'</font></td></tr> <tr bgcolor="'.$config['site']['lightborder'].'"><td width="100"><b>From:</b></td><td width="550" colspan="2"><font color="red">'.htmlspecialchars($buy_from).'</font></td></tr> <tr bgcolor="'.$config['site']['darkborder'].'"><td colspan="3"></td></tr> <tr bgcolor="'.$config['site']['darkborder'].'"><td width="100"><b>Transaction?</b></td><td width="275" align="left"> <form action="?subtopic=shopsystem&action=confirm_transaction" method="POST"><input type="hidden" name="buy_confirmed" value="yes"><input type="hidden" name="buy_id" value="'.$buy_id.'"><input type="hidden" name="buy_from" value="'.htmlspecialchars($buy_from).'"><input type="hidden" name="buy_name" value="'.htmlspecialchars($buy_name).'"><input type="submit" value="Accept"></form></td> <td align="right"><form action="?subtopic=shopsystem" method="POST"><input type="submit" value="Cancel"></form></td></tr> <tr bgcolor="'.$config['site']['darkborder'].'"><td colspan="3"></td></tr> </table> '; } } else { $errormessage .= 'Player with name <b>'.htmlspecialchars($buy_name).'</b> doesn\'t exist. Please <a href="?subtopic=shopsystem&action=select_player&buy_id='.$buy_id.'">select other name</a>.'; } } else { $errormessage .= 'Invalid name format. Please <a href="?subtopic=shopsystem&action=select_player&buy_id='.$buy_id.'">select other name</a> or contact with administrator.'; } } else { $errormessage .= 'For this item you need <b>'.$buy_offer['points'].'</b> points. You have only <b>'.$user_premium_points.'</b> premium points. Please <a href="?subtopic=shopsystem">select other item</a> or buy premium points.'; } } else { $errormessage .= 'Offer with ID <b>'.$buy_id.'</b> doesn\'t exist. Please <a href="?subtopic=shopsystem">select item</a> again.'; } } } } if(!empty($errormessage)) { $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=left CLASS=white><B>Informations</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['lightborder'].'" ALIGN=left><b>'.$errormessage.'</b></TD></TR> </table>'; } if(!$set_session) { unset($_SESSION['viewed_confirmation_page']); } } elseif($action == 'show_history') { if(!$logged) { $errormessage .= 'Please login first.'; } else { $items_history_received = $SQL->query('SELECT * FROM '.$SQL->tableName('z_shop_history_item').' WHERE '.$SQL->fieldName('to_account').' = '.$SQL->quote($account_logged->getId()).' OR '.$SQL->fieldName('from_account').' = '.$SQL->quote($account_logged->getId()).';'); if(is_object($items_history_received)) { foreach($items_history_received as $item_received) { if($account_logged->getId() == $item_received['to_account']) $char_color = 'green'; else $char_color = 'red'; $items_received_text .= '<tr bgcolor="'.$config['site']['lightborder'].'"><td><font color="'.$char_color.'">'.htmlspecialchars($item_received['to_name']).'</font></td><td>'; if($account_logged->getId() == $item_received['from_account']) $items_received_text .= '<i>Your account</i>'; else $items_received_text .= htmlspecialchars($item_received['from_nick']); $items_received_text .= '</td><td>'.htmlspecialchars($item_received['offer_id']).'</td><td>'.htmlspecialchars($item_received['price']).'</td><td>'.date("j F Y, H:i:s", $item_received['trans_start']).'</td>'; if($item_received['trans_real'] > 0) $items_received_text .= '<td>'.date("j F Y, H:i:s", $item_received['trans_real']).'</td>'; else $items_received_text .= '<td><b><font color="red">Not realized yet.</font></b></td>'; $items_received_text .= '</tr>'; } } $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'"></TD></TR> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=left CLASS=white><center><B>Transactions History</B></center></TD></TR> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'"></TD></TR> </table><br>'; if(!empty($items_received_text)) { $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=left CLASS=white colspan="6"><B>Item Transactions</B></TD></TR> <tr bgcolor="'.$config['site']['darkborder'].'"><td><b>To:</b></td><td><b>From:</b></td><td><b>Offer name</b></td><td><b>Price</b></td><td><b>Bought on page</b></td><td><b>Received on OTS</b></td></tr> '.$items_received_text.' </table><br />'; } if(empty($items_received_text)) $errormessage .= 'You did not buy/receive any item.'; } if(!empty($errormessage)) { $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=left CLASS=white><B>Informations</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['lightborder'].'" ALIGN=left><b>'.$errormessage.'</b></TD></TR> </table>'; } } $main_content .= '<br><TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=left CLASS=white><B>Premium Points</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['lightborder'].'" ALIGN=left><b><font color="green">You have premium points: </font></b>'.$user_premium_points.'</TD></TR> </table>'; } else $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" ALIGN=center CLASS=white ><B>Shop Information</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"><center>Shop is currently closed. [to admin: edit it in \'config/config.php\']</TD></TR> </table>';
      Se puder ajustar pra mim agradeceria muito REP+
    • Por Maniaco
      Boa Noite TibiaKing!!!
       
      Bom estou procurando uma base de um WEBSITE DE !!DBO!!
      Quem poder DIPONIBILIZAR AGRADEÇO.


      A alguns dias ando procurando essa base mas sem sucesso algum, e gostaria de verificar com vocês se já foi dispobilizado ou até mesmo alguem possa fornecer esse WebSite. para o meu futuro projeto!

      Segue algumas img para facilizar a localização da base, lembrando que já achei varios sites usando a mesma base! então acredito que já está liberado em alguem site-forum-deepWeb! segue os links de outros servidores que utilizam a mesmo WEBSITE!.

      Link Encurtado: l1nq.com/895iG

      2 Link que usa mesma base de site: l1nq.com/NoC69

      3. Link que utiliza a mesma base. l1nq.com/nLuFZ



       
    • Por Ayron5
      Como essa área está parada a muito tempo, resolvi compartilhar um layout que editei de acordo com meu gosto.
      Deixei simplão mesmo, tá usável e fácil de editar.
      O que vale é ajudar. XD
      Créditos para otpk... e o Benny pois usei o dele como base. Se esqueci de alguém é só avisar.
       
       
      Link: 
       
      Scan:
       
       

    • Por ITALOx
      Olá, Membros do tibiaking.
      Como o @M ustang trouxe o servidor NTO ATOM
       
      Estou trazendo o site do Naruto World. usado pelo os donos do NTO ATOM.
      é um site completo e longe de erros/bugs.
      O que foi retirado:
      Retirado todos os sql injection. Arrumado bugs e erros. Version do xampp:
      Versão xampp:
      V1.8.2-2
      -
      Versão php:
      5
       
      Download:
      Xampp:
      Scan's
       
      Print's
       


       
      Como resolver os erros: 
      Warning: include(C:\xampp\htdocs\system\application\libraries\sysplugins\smarty_internal_data.php): failed to open stream: No such file or directory in C:\xampp\htdocs\system\application\libraries\Smarty.class.php on line 768

      Warning: include(): Failed opening 'C:\xampp\htdocs\system\application\libraries\sysplugins\smarty_internal_data.php' for inclusion (include_path='C:\xampp\php\PEAR') in C:\xampp\htdocs\system\application\libraries\Smarty.class.php on line 768

      Fatal error: Class 'Smarty_Internal_Data' not found in C:\xampp\htdocs\system\application\libraries\Smarty.class.php on line 109
       
       
       
       
      Vá até C:\xampp\htdocs\system\application\libraries
      Depois baixe esses arquivo e jogue tudo dentro da pasta sysplugins.
      e pronto, estará funcionando novamente!
      https://www.mediafire.com/file/jfhydg7p81hjbj7/sysplugins.zip/file
       
       
       
      Créditos:
       
      -  Italo 100%
    • Por koyotestark
      Ola pessoas, venho trazer algo aqui que eu armenguei para meu site e queria compartilhar, com vocês que é o CharacterView com skills e outfits.
      O Script de outfit no character view eu peguei do Otland postado pelo averatec e então fiz algumas adições com o pouco que entendo.
      Vamos as explicações?
      Para adicionar a outfit vcs vão precisar de 2 coisas. 
      1 - do script que vou disponibilizar
      2 - das outfits de seu ot. para isso vcs terão que exportar manualmente ou do jeito que souberem, caso seja de ot alternativo, se for de tibia ja vou disponibilizar as outfits do 8.60 que foi coclocado pra dowload junto na postagem do otland.
       
      Instalando view_chacracter.php
      - Vá até a pasta do xamp ou programa onde está seu site e abra a pasta do site, caso seja no xampp será o htdocs.
      Dentro da pasta procure por "SYSTEM", depois "APPLICATION" e depois "VIEWS"
      Cole o view_character.php dentro de VIEWS.
      - Agora para aparecer as outfits, vá em PUBLIC e cole tudo o que estiver dentro da pasta OUTFITTER que são: o arquivo "outfitter.php" e a pasta "outfits"
      - Caso adicione novas outfits siga o modelo das outfits que estão dentro. "lembrando que devem estar sempre na pasta outfit e template" caso seja outfit colorida, coloque a base na pasta template.
      - Caso seu servidor seja alternativo "dragon ball, naruto etc. apague todas as outfits e insira as suas de db/nt, renomeie as suas da seguinte forma "1_2_0_0" alterando somente o primeiro numero que é referente ao ID da outfit.
       
      Eu adicionei apenas 5 skills, pois são os que mais sao usados em meu servidor, caso queira usar mais, basta copiar esta parte
      e colocar abaixo ou acima e mudar o skill ID referente ao skill, sendo? 
      0 fist, 1 club, 2 sword, 3 axe, 4 distance, 5 shield e 6 fishing.
      E renomear como desejar
       
      - Caso queira remover as barras horizontais do fundo, basta remover este trecho 
      bgcolor="#D4C0A1"  
      Demonstração:
      Eu fiz questão de usar uma outfit 64px para mostrar o que acontece quando for assim.
      Optei por upar em mais de 1 servidor.
      Arquivos:
      Outfitter + Character View GoogleDrive
      Outfitter + Character View Mediafire
      Outfitter + Character View Mega
      Outfitter + Character View.zip
      SCAN:
      https://www.virustotal.com/gui/file/4e35ee20732efb1e7df9196416bd40b05ea92230f629f9ba427d32dfdb7b8f71/detection
      Creditos: 
      Eu: Kira Conquest/Kira Stark - por editarr e adicionar skill bar
      averatec do Otland onde eu peguei o outfitter
      eu não lembro onde eu peguei o script mana e health bar
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo