DA

Fazer Viptime Virar Premdays - Apenas Gesior

Por danielb, 24 de fev. de 2012 em Tutoriais de Websites

5.0 (1)
8
4.3k
danielbD
24 de fevereiro de 2012 às 22:08

Bom gente, esse tutorial, é para aquelas pessoas que não gostam do sistema de viptime..

 

ja sabemos q a viptime é pelo pacc do shopsystem....

 

funciona da seguinte forma, no instante que a pessoa comprar a vip time no site, será adicionado premdays ao inves de viptime...

 

Vamos ao que interessa...

 

vai no shopsystem.php e procure por:

 

 

if($buy_offer['type'] == 'pacc') {

$player_vip_time = $buy_player_account->getCustomField('vip_time');

$player_lastlogin = $buy_player_account->getCustomField('lastday');

$save_transaction = 'INSERT INTO '.$SQL->tableName('z_shop_history_pacc').' (id, to_name, to_account, from_nick, from_account, price, pacc_days, trans_state, trans_start, trans_real) VALUES (NULL, '.$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['days']).', \'realized\', '.$SQL->quote(time()).', '.$SQL->quote(time()).');';

$SQL->query($save_transaction);

if($player_vip_time > 0)

$buy_player_account->setCustomField('vip_time', $player_vip_time + $buy_offer['days'] * 86400);

else

$buy_player_account->setCustomField('vip_time', time() + $buy_offer['days'] * 86400);

$buy_player_account->setCustomField('premium_points', $user_premium_points-$buy_offer['points']);

$user_premium_points = $user_premium_points - $buy_offer['points'];

if ($player_vip_days >= 1) {

}

 

e substitua exatamente como está, abaixo...

 

if($buy_offer['type'] == 'pacc') {

$player_vip_time = $buy_player_account->getCustomField('premdays');

if($player_vip_time > 0)

$buy_player_account->setCustomField('premdays', $player_vip_time + $buy_offer['days']);

else

$buy_player_account->setCustomField('premdays', $player_vip_time + $buy_offer['days']);

$buy_player_account->setCustomField('premium_points', $user_premium_points-$buy_offer['points']);

$user_premium_points = $user_premium_points - $buy_offer['points'];

if ($player_vip_days >= 1) {

}

Aqui funcionou perfeitamente ...

 

Espero muito q ai funcione para quem precisar...

 

Abração e aqui vai uma SS pra vc ver...

 

 

Aaaaaa, essa opção no Shop Admin vai funcionar só pra PACC, mas pra vc não se complicar vc pode colocar P.A.

 

testejf.jpg

Editado Fevereiro 24 por danielb

3 meses depois...
alissonfgpA
30 de maio de 2012 às 22:54

reputado...

kr tava precisando mto disso

vlws

3 meses depois...
xxmiguelX
06 de agosto de 2012 às 19:48

O meu deu esse erro aqui :

 

 

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 'vip_time' in 'field list'' in C:\xampp\htdocs\pot\OTS_Account.php:772 Stack trace: #0 C:\xampp\htdocs\pot\OTS_Account.php(772): PDO->query('SELECT `vip_tim...') #1 C:\xampp\htdocs\shopsystem.php(390): OTS_Account->getCustomField('vip_time') #2 C:\xampp\htdocs\index.php(225): include('C:\xampp\htdocs...') #3 {main} thrown in C:\xampp\htdocs\pot\OTS_Account.php on line 772

 

3 semanas depois...
WiniciussW
27 de agosto de 2012 às 11:50

Cara, não itendi o proposito deste sistema, qual a verdadeira função e utilidade dele?

Piabeta KunP
27 de agosto de 2012 às 12:15

Tem sites que vem configurado para vender vip, e alguns querem usar premium account!

É para isso que serve esse topico!

WiniciussW
28 de agosto de 2012 às 08:44

Aaah eu quero ao contrario, o meu vem com premmy account e eu quero um vip system

Piabeta KunP
28 de agosto de 2012 às 14:40

so repetir o processo ao contrario!

Até!

WiniciussW
29 de agosto de 2012 às 17:16

Como não pensei nisso '-'. Deu o mesmo erro do cara acima, mas é porque não tenho a tabela vip_time, vou procurar como adicionar e creio que dara certo. De qualquer forma, muito obrigado!