• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

[Gesior acc. maker] Shopsystem: NEW offer_types

Hello.
I buy pacc on your script and:
This name is already used. Please choose another name!
Pleas help my :)
Sorry. My english is The Best :)
 
I use TFS 0.2
All functions exept unban are working fine. But when I rename the account colomn in bans table to value as it is in 0.3 then the unbanner works, but when i change it back to account and edit the shopsystem etc.. it says that the account has no ban. Why it is so??? xd

Your's ballack13
 
How to edit the shopsystem.php file that i have only 3 categories. Now for the new ones(unban,change name etc.) there is 1 category for every offer type. I wanna have one category Others where the new offer types stand. Is this possible?? And if yes, how to edit script??

Your's ballack13
 
well if u can just write what are the changes in ur shopsystem.php it will be really great ;p
 
Nvm. Ive made it. If you wanna know how to do or wanna have the script msg here...

Your's ballack13
 
Nvm. Ive made it. If you wanna know how to do or wanna have the script msg here...

Your's ballack13

Nop, I made it ;). But it was your idea, and it looks better now.
Here is the code:

Code:
<?PHP
//  ALTER TABLE `z_shop_history_item` CHANGE `offer_id` `offer_id` VARCHAR( 255 ) NOT NULL;
// UPDATE `z_shop_history_item`, `z_shop_offer` SET `z_shop_history_item`.`offer_id` = `z_shop_offer`.`offer_name` WHERE `z_shop_history_item`.`offer_id` = `z_shop_offer`.`id`;
if($config['site']['shop_system'] == 1)
{
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'] == 'pacc')
	{
		$offer['id'] = $data['id'];
		$offer['type'] = $data['offer_type'];
		$offer['days'] = $data['count1'];
		$offer['points'] = $data['points'];
		$offer['description'] = $data['offer_description'];
		$offer['name'] = $data['offer_name'];
	}
	elseif ($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'] == 'container')
	{
		$offer['id'] = $data['id'];
		$offer['type'] = $data['offer_type'];
		$offer['container_id'] = $data['itemid2'];
		$offer['container_count'] = $data['count2'];
		$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'] == 'itemlogout')
	{
		$offer['id'] = $data['id'];
		$offer['type'] = $data['offer_type'];
		$offer['points'] = $data['points'];
		$offer['description'] = $data['offer_description'];
		$offer['pid'] = $data['pid'];
		$offer['count1'] = $data['count1'];
		$offer['item_id'] = $data['itemid1'];
		$offer['free_cap'] = $data['free_cap'];
	}
	elseif ($data['offer_type'] == 'changename')
	{
		$offer['id'] = $data['id'];
		$offer['type'] = $data['offer_type'];
		$offer['points'] = $data['points'];
		$offer['description'] = $data['offer_description'];
		$offer['name'] = $data['offer_name'];
	}
	elseif ($data['offer_type'] == 'redskull')
	{
		$offer['id'] = $data['id'];
		$offer['type'] = $data['offer_type'];
		$offer['points'] = $data['points'];
		$offer['description'] = $data['offer_description'];
		$offer['name'] = $data['offer_name'];
	}
	elseif ($data['offer_type'] == 'unban')
	{
		$offer['id'] = $data['id'];
		$offer['type'] = $data['offer_type'];
		$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_pacc = 0;
	$i_item = 0;
	$i_container = 0;
	$i_itemlogout = 0;
	$i_changename = 0;
	$i_redskull = 0;
	$i_unban = 0;
	while($data = $offer_list->fetch()) {
		if ($data['offer_type'] == 'pacc')
		{
			$offer_array['pacc'][$i_pacc]['id'] = $data['id'];
			$offer_array['pacc'][$i_pacc]['days'] = $data['count1'];
			$offer_array['pacc'][$i_pacc]['points'] = $data['points'];
			$offer_array['pacc'][$i_pacc]['description'] = $data['offer_description'];
			$offer_array['pacc'][$i_pacc]['name'] = $data['offer_name'];
			$i_pacc++;
		}
		elseif ($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'] == 'container')
		{
			$offer_array['container'][$i_container]['id'] = $data['id'];
			$offer_array['container'][$i_container]['container_id'] = $data['itemid2'];
			$offer_array['container'][$i_container]['container_count'] = $data['count2'];
			$offer_array['container'][$i_container]['item_id'] = $data['itemid1'];
			$offer_array['container'][$i_container]['item_count'] = $data['count1'];
			$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++;
		}
		elseif ($data['offer_type'] == 'itemlogout')
		{
			$offer_array['itemlogout'][$i_itemlogout]['id'] = $data['id'];
			$offer_array['itemlogout'][$i_itemlogout]['points'] = $data['points'];
			$offer_array['itemlogout'][$i_itemlogout]['description'] = $data['offer_description'];
			$offer_array['itemlogout'][$i_itemlogout]['name'] = $data['offer_name'];
			$offer_array['itemlogout'][$i_itemlogout]['count1'] = $data['count1'];
			$offer_array['itemlogout'][$i_itemlogout]['pid'] = $data['pid'];
			$offer_array['itemlogout'][$i_itemlogout]['item_id'] = $data['itemid1'];
			$offer_array['itemlogout'][$i_itemlogout]['free_cap'] = $data['free_cap'];
			$i_itemlogout++;
		}
		elseif ($data['offer_type'] == 'changename')
		{
			$offer_array['changename'][$i_changename]['id'] = $data['id'];
			$offer_array['changename'][$i_changename]['points'] = $data['points'];
			$offer_array['changename'][$i_changename]['description'] = $data['offer_description'];
			$offer_array['changename'][$i_changename]['name'] = $data['offer_name'];
			$i_changename++;
		}
		elseif ($data['offer_type'] == 'redskull')
		{
			$offer_array['redskull'][$i_redskull]['id'] = $data['id'];
			$offer_array['redskull'][$i_redskull]['points'] = $data['points'];
			$offer_array['redskull'][$i_redskull]['description'] = $data['offer_description'];
			$offer_array['redskull'][$i_redskull]['name'] = $data['offer_name'];
			$i_redskull++;
		}
		elseif ($data['offer_type'] == 'unban')
		{
			$offer_array['unban'][$i_unban]['id'] = $data['id'];
			$offer_array['unban'][$i_unban]['points'] = $data['points'];
			$offer_array['unban'][$i_unban]['description'] = $data['offer_description'];
			$offer_array['unban'][$i_unban]['name'] = $data['offer_name'];
			$i_unban++;
		}
	}
	return $offer_array;
}
	
	if($action == '')
	{
		unset($_SESSION['viewed_confirmation_page']);
		$main_content .= '<h2>Welcome to OTS shop. Here you can buy items, PACC, and Unban account!.</h2>';
		$offer_list = getOfferArray();
		//show list of pacc offers
		if(count($offer_list['pacc']) > 0)
		{
			$main_content .= '<table border="0" cellpadding="1" cellspacing="1" width="650"><tr width="650" bgcolor="black"><td colspan="3"><font color="gold" size="4"><b>&nbsp;PACC</b></font></td></tr><tr bgcolor="black"><td width="50" align="center"><font color=red><b>Days</b></font></td><td width="350" align="left"><font color=red><b>Description</b></font></td><td width="250" align="center"><font color=red><b>Select product</b></font></td></tr>';
			foreach($offer_list['pacc'] as $pacc)
			{
				$main_content .= '<tr bgcolor="#bf3100"><td align="center">'.$pacc['days'].'</td><td><b>'.$pacc['name'].'</b> ('.$pacc['points'].' points)<br />'.$pacc['description'].'</td><td align="center">';
				if(!$logged)
				{
					$main_content .= '<b>Login to buy</b>';
				}
				else
				{
					$main_content .= '<form action="index.php?subtopic=shopsystem&action=select_player" method=POST><input type="hidden" name="buy_id" value="'.$pacc['id'].'"><input type="submit" value="Buy '.$pacc['name'].'"><br><b>for '.$pacc['points'].' points</b></form>';
				}
			}
			$main_content .= '</table><br />';
		}
		//show list of items offers
		if(count($offer_list['item']) > 0)
		{
			$main_content .= '<table border="0" cellpadding="1" cellspacing="1" width="650"><tr width="650" bgcolor="black"><td colspan="3"><font color="gold" size="4"><b>&nbsp;ITEMS</b></font></td></tr><tr bgcolor="black"><td width="50" align="center"><font color=red><b>Picture</b></font></td><td width="350" align="left"><font color=red><b>Description</b></font></td><td width="250" align="center"><font color=red><b>Select product</b></font></td></tr>';
			foreach($offer_list['item'] as $item)
			{
				$main_content .= '<tr bgcolor="="#bf3100"><td align="center"><img src="item_images/'.$item['id'].'.jpg"></td><td><b>'.$item['name'].'</b> ('.$item['points'].' points)<br />'.$item['description'].'</td><td align="center">';
				if(!$logged)
				{
					$main_content .= '<b>Login to buy</b>';
				}
				else
				{
					$main_content .= '<form action="index.php?subtopic=shopsystem&action=select_player" method=POST><input type="hidden" name="buy_id" value="'.$item['id'].'"><input type="submit" value="Buy '.$item['name'].'"><br><b>for '.$item['points'].' points</b></form>';
				}
				$main_content .= '</td></tr>';
			}
			$main_content .= '</table><br />';
		}
		
		if(count($offer_list['itemlogout']) > 0)
		{
			$main_content .= '<table border="0" cellpadding="1" cellspacing="1" width="650"><tr width="650" bgcolor="black"><td colspan="3"><font color="gold" size="4"><b>&nbsp;Receive Item on Logout</b></font></td></tr><tr bgcolor="black"><td width="50" align="center"><font color=red><b>Picture</b></font></td><td width="350" align="left"><font color=red><b>Description</b></font></td><td width="250" align="center"><font color=red><b>Select product</b></font></td></tr>';
			foreach($offer_list['itemlogout'] as $itemlogout)
			{
				$main_content .= '<tr bgcolor="#bf3100"><td align="center"><img src="item_images/'.$itemlogout['id'].'.jpg"></td><td><b>'.$itemlogout['name'].'</b> ('.$itemlogout['points'].' points)<br />'.$itemlogout['description'].'</td><td align="center">';
				if(!$logged)
				{
					$main_content .= '<b>Login to buy</b>';
				}
				else
				{
					$main_content .= '<form action="index.php?subtopic=shopsystem&action=select_player" method=POST><input type="hidden" name="buy_id" value="'.$itemlogout['id'].'"><input type="submit" value="Buy '.$itemlogout['name'].'"><br><b>for '.$itemlogout['points'].' points</b></form>';
				}
				$main_content .= '</td></tr>';
			}
			$main_content .= '</table><br />';
		}

		//show list of containers offers
		if(count($offer_list['container']) > 0)
		{
			$main_content .= '<table border="0" cellpadding="1" cellspacing="1" width="650"><tr width="650" bgcolor="black"><td colspan="3"><font color="gold" size="4"><b>&nbsp;CONTAINERS WITH ITEMS</b></font></td></tr><tr bgcolor="black"><td width="50" align="center"><font color=red><b>Picture</b></font></td><td width="350" align="left"><font color=red><b>Description</b></font></td><td width="250" align="center"><font color=red><b>Select product</b></font></td></tr>';
			foreach($offer_list['container'] as $container)
			{
				$main_content .= '<tr bgcolor="gold"><td align="center"><img src="item_images/'.$container['id'].'.jpg"></td><td><b>'.$container['name'].'</b> ('.$container['points'].' points)<br />'.$container['description'].'</td><td align="center">';
				if(!$logged)
				{
					$main_content .= '<b>Login to buy</b>';
				}
				else
				{
					$main_content .= '<form action="index.php?subtopic=shopsystem&action=select_player" method=POST><input type="hidden" name="buy_id" value="'.$container['id'].'"><input type="submit" value="Buy '.$container['name'].'"><br><b>for '.$container['points'].' points</b></form>';
				}
				$main_content .= '</td></tr>';
			}
			$main_content .= '</table><br />';
		}
		
		//Change Name
			$main_content .= '<table border="0" cellpadding="1" cellspacing="1" width="650"><tr width="650" bgcolor="black"><td colspan="3"><font color="gold" size="4"><b>&nbsp;Other</b></font></td></tr><tr bgcolor="black"><td width="50" align="center"><font color=red><b>Days</b></font></td><td width="350" align="left"><font color=red><b>Description</b></font></td><td width="250" align="center"><font color=red><b>Select product</b></font></td></tr>';
			foreach($offer_list['changename'] as $changename)
			{
				$main_content .= '<tr bgcolor="#bf3100"><td align="center">'.$changename['days'].'</td><td><b>'.$changename['name'].'</b> ('.$changename['points'].' points)<br />'.$changename['description'].'</td><td align="center">';
				if(!$logged)
				{
					$main_content .= '<b>Login to buy</b>';
				}
				else
				{
					$main_content .= '<form action="index.php?subtopic=shopsystem&action=select_player" method=POST><input type="hidden" name="buy_id" value="'.$changename['id'].'"><input type="submit" value="Buy '.$changename['name'].'"><br><b>for '.$changename['points'].' points</b></form>';
				}
			}
			
		//Remove Red Skull
			foreach($offer_list['redskull'] as $redskull)
			{
				$main_content .= '<tr bgcolor="#bf3100"><td align="center"><img src="item_images/'.$redskull['id'].'.jpg"></td><td><b>'.$redskull['name'].'</b> ('.$level['points'].' points)<br />'.$redskull['description'].'</td><td align="center">';
				if(!$logged)
				{
					$main_content .= '<b>Login to buy</b>';
				}
				else
				{
					$main_content .= '<form action="index.php?subtopic=shopsystem&action=select_player" method=POST><input type="hidden" name="buy_id" value="'.$redskull['id'].'"><input type="submit" value="Buy '.$redskull['name'].'"><br><b>for '.$redskull['points'].' points</b></form>';
				}
				$main_content .= '</td></tr>';
			}
		
		//Unban
			foreach($offer_list['unban'] as $unban)
			{
				$main_content .= '<tr bgcolor="#bf3100"><td align="center"><img src="item_images/'.$unban['id'].'.jpg"></td><td><b>'.$unban['name'].'</b> ('.$unban['points'].' points)<br />'.$unban['description'].'</td><td align="center">';
				if(!$logged)
				{
					$main_content .= '<b>Login to buy</b>';
				}
				else
				{
					$main_content .= '<form action="index.php?subtopic=shopsystem&action=select_player" method=POST><input type="hidden" name="buy_id" value="'.$unban['id'].'"><input type="submit" value="Buy '.$unban['name'].'"><br><b>for '.$unban['points'].' points</b></form>';
				}
				$main_content .= '</td></tr>';
			}
			$main_content .= '</table><br />';
	}
	
elseif($action == 'select_player')
	{
		unset($_SESSION['viewed_confirmation_page']);
		if(!$logged) {
			$main_content .= 'Please login first.';
		}
		else
		{
			$buy_id = (int) $_REQUEST['buy_id'];
			if(empty($buy_id))
			{
				$main_content .= 'Please <a href="index.php?subtopic=shopsystem">select item</a> first.';
			}
			else
			{
				$buy_offer = getItemByID($buy_id);
				if(isset($buy_offer['id'])) //item exist in database
				{
				if($buy_offer['type'] != 'changename') {
					if($user_premium_points >= $buy_offer['points'])
					{
						$main_content .= '<h2>Select player</h2>
						<table border="0" cellpadding="1" cellspacing="1" width="650">
						<tr bgcolor="black"><td colspan="2"><font color="gold" size="4"><b>Selected offer</b></font></td></tr>
						<tr bgcolor="gold"><td width="100"><b>Name:</b></td><td width="550">'.$buy_offer['name'].'</td></tr>
						<tr bgcolor="gold"><td width="100"><b>Description:</b></td><td width="550">'.$buy_offer['description'].'</td></tr>
						</table><br />
						<form action="index.php?subtopic=shopsystem&action=confirm_transaction" method=POST><input type="hidden" name="buy_id" value="'.$buy_id.'">
						<table border="0" cellpadding="1" cellspacing="1" width="650">
						<tr bgcolor="black"><td colspan="2"><font color="gold" size="4"><b>Give item/pacc* to player from your account</b></font></td></tr>
						<tr bgcolor="gold"><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)
						{
							$players_from_logged_acc->orderBy('name');
							foreach($players_from_logged_acc as $player)
							{
								$main_content .= '<option>'.$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="index.php?subtopic=shopsystem&action=confirm_transaction" method=POST><input type="hidden" name="buy_id" value="'.$buy_id.'">
							<table border="0" cellpadding="1" cellspacing="1" width="650">
							<tr bgcolor="black"><td colspan="2"><font color="gold" size="4"><b>Give item/pacc* to other player</b></font></td></tr>
							<tr bgcolor="gold"><td width="110"><b>To player:</b></td><td width="550"><input type="text" name="buy_name"> - name of player on</td></tr>
							<tr bgcolor="gold"><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>';

						$main_content .= '*PACC is for all characters from account of selected player name';
					}
					else
					{
						$main_content .= 'For this item you need <b>'.$buy_offer['points'].'</b> points. You have only <b>'.$user_premium_points.'</b> premium points. Please <a href="index.php?subtopic=shopsystem">select other item</a> or buy premium points.';
					}
				}
				else
				{
							$main_content .= '<form action="index.php?subtopic=shopsystem&action=confirm_transaction" method=POST><input type="hidden" name="buy_id" value="'.$buy_id.'">
							<table border="0" cellpadding="1" cellspacing="1" width="650">
							<tr bgcolor="black"><td colspan="2"><font color="gold" size="4"><b>Change Name:</b></font></td></tr>
							<tr bgcolor="gold"><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)
						{
							$players_from_logged_acc->orderBy('name');
							foreach($players_from_logged_acc as $player)
							{
								$main_content .= '<option>'.$player->getName().'</option>';
							}
						}
						else
						{
							$main_content .= 'You don\'t have any character on your account.';
						}
						$main_content .= '</select></td></tr>
							<tr bgcolor="gold"><td width="110"><b>New name:</b></td><td width="550"><input type="text" name="buy_from">&nbsp;<input type="submit" value="Change Name"></td></tr>
							</table><br />
							</form>';
							}
				}
				else
				{
					$main_content .= 'Offer with ID <b>'.$buy_id.'</b> doesn\'t exist. Please <a href="index.php?subtopic=shopsystem">select item</a> again.';
				}
			}
		}
	}
	elseif($action == 'confirm_transaction')
	{
		if(!$logged) {
			$main_content .= 'Please login first.';
		}
		else
		{
			$buy_id = (int) $_POST['buy_id'];
			$buy_name = stripslashes(urldecode($_POST['buy_name']));
			$buy_from = stripslashes(urldecode($_POST['buy_from']));
			if(empty($buy_id))
			{
				$main_content .= 'Please <a href="index.php?subtopic=shopsystem">select item</a> first.';
			}
			else
			{
				if($buy_offer['type'] == 'changename'){
				if(!check_name_new_char($buy_from))
				{
					$main_content .= 'Invalid name format of new name.';
				}
				}
				else
				{
					$buy_offer = getItemByID($buy_id);
					$check_name_in_database = $ots->createObject('Player');
				$check_name_in_database->find($buy_from);
				if($buy_offer['type'] == 'changename'){
				if(!$check_name_in_database->isLoaded()) {
				}
				}
					if(isset($buy_offer['id'])) //item exist in database
					{
						if($user_premium_points >= $buy_offer['points'])
						{
							if(check_name($buy_name))
							{
								$buy_player = new OTS_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'] == 'pacc')
										{
											$player_premdays = $buy_player_account->getCustomField('premdays');
											$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);
											$buy_player_account->setCustomField('premdays', $player_premdays+$buy_offer['days']);
											$account_logged->setCustomField('premium_points', $user_premium_points-$buy_offer['points']);
											$user_premium_points = $user_premium_points - $buy_offer['points'];
											if($player_premdays == 0)
											{
												$buy_player_account->setCustomField('lastday', time());
											}
											$main_content .= '<h2>PACC added!</h2><b>'.$buy_offer['days'].' days</b> of Premium Account added to account of player <b>'.$buy_player->getName().'</b> 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="index.php?subtopic=shopsystem">GO TO MAIN SHOP SITE</a>';
										}
elseif($buy_offer['type'] == 'unban')
	{				
	$my_acc_id = $account_logged->getCustomField('id');
	$datadata = $SQL->query('SELECT * FROM '.$SQL->tableName('bans').' WHERE value = '.$my_acc_id.';')->fetch();
	if($datadata['value'] == $my_acc_id) {
	
		if($SQL->query('DELETE FROM bans WHERE value= '.$my_acc_id.' LIMIT 1;')) {
		}
		else
		{
		$SQL->query('DELETE FROM bans WHERE account= '.$my_acc_id.' LIMIT 1;');
		}
		$account_logged->setCustomField('premium_points', $user_premium_points-$buy_offer['points']);
		$user_premium_points = $user_premium_points - $buy_offer['points'];
		$main_content .= '
			<h2>
				Ban Deleted!
			</h2>
			<b>
				Your account has been unbanned for '.$buy_offer['points'].' premium points
			</b>
			from your account. 
			<br>
			Now you have 
				<b>
					'.$user_premium_points.' premium points
				</b>.
			<br>
			<a href="index.php?subtopic=shopsystem">
				GO TO MAIN SHOP SITE
			</a>';
	} else 
	{
		$main_content .= '
		<b>
			You don\'t have any bans in your account! 
		</b>
		<br>
		<a href="index.php?subtopic=shopsystem">
			GO BACK
		</a>';	
	}
	}
	////////////////////////////////
	elseif($buy_offer['type'] == 'itemlogout')
	{				
	$my_acc_id = $buy_player->getCustomField('id');
	$datadata = $SQL->query('SELECT * FROM '.$SQL->tableName('players').' WHERE id = '.$my_acc_id.';')->fetch();
	$datadata2 = $SQL->query('SELECT * FROM '.$SQL->tableName('player_items').' WHERE player_id = '.$my_acc_id.';')->fetch();
	if($datadata['online'] == '0') {
	if ($datadata2['pid'] != '10') {
	if ($datadata['cap'] >= $SQL->quote($buy_offer['free_cap'])) {
		$SQL->query('INSERT INTO player_items (player_id, pid, itemtype, count) VALUES ('.$my_acc_id.', '.$SQL->quote($buy_offer['pid']).', '.$SQL->quote($buy_offer['item_id']).', '.$SQL->quote($buy_offer['count1']).');');
		$account_logged->setCustomField('premium_points', $user_premium_points-$buy_offer['points']);
		$user_premium_points = $user_premium_points - $buy_offer['points'];
		$main_content .= '
			<h2>
				Item received to player: '.$buy_player->getName().'!
			</h2>
			<br>
			Now you have 
				<b>
					'.$user_premium_points.' premium points
				</b>.
			<br>
			<a href="index.php?subtopic=shopsystem">
				GO TO MAIN SHOP SITE
			</a>';
	} else 
	{
		$main_content .= '
		<b>
			You need '.$SQL->quote($buy_offer['free_cap']).' or more of cap!
		</b>
		<br>
		<a href="index.php?subtopic=shopsystem">
			GO BACK
		</a>';	
	}
	} else 
	{
	
		$main_content .= '
		<b>
			Please leave the arrow slot in blank to receive item!
		</b>
		<br>
		<a href="index.php?subtopic=shopsystem">
			GO BACK
		</a>';	
	}
	} else 
	{
		$main_content .= '
		<b>
			You need to be offline!
		</b>
		<br>
		<a href="index.php?subtopic=shopsystem">
			GO BACK
		</a>';	
	}
	}
	////////////////////////////////
	//////////////////////////
	elseif($buy_offer['type'] == 'changename')
	{					
	$my_acc_id = $buy_player->getCustomField('id');
	$dataget = $SQL->query('SELECT * FROM '.$SQL->tableName('players').' WHERE '.$SQL->fieldName('id').' = '.$my_acc_id.';')->fetch();
	if($dataget['online'] == '0') {
	$buybuy = 'buy_from';
			$SQL->query('UPDATE `players` SET `name` = '. $SQL->quote($buy_from) .' WHERE `id` = '. $my_acc_id.' ;');
			
		$account_logged->setCustomField('premium_points', $user_premium_points-$buy_offer['points']);
		$user_premium_points = $user_premium_points - $buy_offer['points'];
		$suma_levels = $buy_offer['level'] + $dataget['level'];
		$main_content .= '
			<h2>
				Your name has changed to '.$buy_from.'
			</h2>
			<b>
				You have
			</b>
			<br>
				<b>
					'.$user_premium_points.' premium points left 
				</b>.
			<br>
			<a href="index.php?subtopic=shopsystem">
				GO TO MAIN SHOP SITE
			</a>';
	} else 
	{
	$suma_levels = $buy_offer['level'] + $dataget['level'];
		$main_content .= '
		<b>
		 '.$buy_name.' has to be offline to complete transaction.
		</b>
		<br>
		<a href="index.php?subtopic=shopsystem">
			GO BACK
		</a>';	
	}
	}
	//////////////////////////
		////////////////////////////////
	elseif($buy_offer['type'] == 'redskull')
	{
	//Obtener id ed la cuenta					
	$my_acc_id = $buy_player->getCustomField('id');
	$dataget = $SQL->query('SELECT * FROM '.$SQL->tableName('players').' WHERE '.$SQL->fieldName('id').' = '.$my_acc_id.';')->fetch();
	if($dataget['redskull'] == '1' AND $dataget['online'] >= '0' AND $dataget['redskulltime'] > '0') {
	
				$SQL->query('UPDATE players SET redskull=0, redskulltime=0 WHERE id='. $my_acc_id .';');
		$account_logged->setCustomField('premium_points', $user_premium_points-$buy_offer['points']);
		$user_premium_points = $user_premium_points - $buy_offer['points'];
		$main_content .= '
			<h2>
				RedSkull Removed!
			</h2>
			<b>
				Your redskull has been removed to the player '.$buy_player->getName().',
			<br>
			Now you have 
				<b>
					'.$user_premium_points.' premium points
				</b>.
			<br>
			<a href="index.php?subtopic=shopsystem">
				GO TO MAIN SHOP SITE
			</a>';
	} else 
	{
		$main_content .= '
		<b>
		'.$buy_player->getName().' has to be offline or have redskull to complete transaction!.
		</b>
		<br>
		<a href="index.php?subtopic=shopsystem">
			GO BACK
		</a>';	
	}
	}
	//////////////////////////
	
	
	
							elseif($buy_offer['type'] == 'item')
										{
											$sql = 'INSERT INTO '.$SQL->tableName('z_ots_comunication').' (id, name, type, action, param1, param2, param3, param4, param5, param6, param7, delete_it) VALUES (NULL, '.$SQL->quote($buy_player->getName()).', \'login\', \'give_item\', '.$SQL->quote($buy_offer['item_id']).', '.$SQL->quote($buy_offer['item_count']).', \'\', \'\', \'item\', '.$SQL->quote($buy_offer['name']).', \'\', \'1\');';
											$SQL->query($sql);
											$save_transaction = 'INSERT INTO '.$SQL->tableName('z_shop_history_item').' (id, to_name, to_account, from_nick, from_account, price, offer_id, trans_state, trans_start, 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']).', \'wait\', '.$SQL->quote(time()).', \'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 .= '<h2>Item added!</h2><b>'.$buy_offer['name'].'</b> added to player <b>'.$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="index.php?subtopic=shopsystem">GO TO MAIN SHOP SITE</a>';
										}
										elseif($buy_offer['type'] == 'container')
										{
											$sql = 'INSERT INTO '.$SQL->tableName('z_ots_comunication').' (id, name, type, action, param1, param2, param3, param4, param5, param6, param7, delete_it) VALUES (NULL, '.$SQL->quote($buy_player->getName()).', \'login\', \'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']).', \'container\', '.$SQL->quote($buy_offer['name']).', \'\', \'1\');';
											$SQL->query($sql);
											$save_transaction = 'INSERT INTO '.$SQL->tableName('z_shop_history_item').' (id, to_name, to_account, from_nick, from_account, price, offer_id, trans_state, trans_start, 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']).', \'wait\', '.$SQL->quote(time()).', \'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 .= '<h2>Container of items added!</h2><b>'.$buy_offer['name'].'</b> added to player <b>'.$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="index.php?subtopic=shopsystem">GO TO MAIN SHOP SITE</a>';
										}
									}
									else
									{
									if($buy_offer['type'] != 'changename') {
										$set_session = TRUE;
										$_SESSION['viewed_confirmation_page'] = 'yes';
										$main_content .= '<h2>Confirm transaction</h2>
										<table border="0" cellpadding="1" cellspacing="1" width="650">
										<tr bgcolor="black"><td colspan="3"><font color="gold" size="4"><b>Confirm transaction</b></font></td></tr>
										<tr bgcolor="gold"><td width="100"><b>Name:</b></td><td width="550" colspan="2">'.$buy_offer['name'].'</td></tr>
										<tr bgcolor="gold"><td width="100"><b>Description:</b></td><td width="550" colspan="2">'.$buy_offer['description'].'</td></tr>
										<tr bgcolor="gold"><td width="100"><b>Cost:</b></td><td width="550" colspan="2"><b>'.$buy_offer['points'].' premium points</b> from your account</td></tr>
										<tr bgcolor="gold"><td width="100"><b>For Player:</b></td><td width="550" colspan="2"><font color="red">'.$buy_player->getName().'</font></td></tr>
										<tr bgcolor="gold"><td width="100"><b>From:</b></td><td width="550" colspan="2"><font color="red">'.$buy_from.'</font></td></tr>
										<tr bgcolor="red"><td width="100"><b>Transaction?</b></td><td width="275" align="left">
										<form action="index.php?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="'.urlencode($new_name).'"><input type="hidden" name="buy_name" value="'.urlencode($buy_name).'"><input type="submit" value="Accept"></form></td>
										<td align="right"><form action="index.php?subtopic=shopsystem" method="POST"><input type="submit" value="Cancel"></form></td></tr>
										</table> 
										';
										}
										else
										{
										$set_session = TRUE;
										$_SESSION['viewed_confirmation_page'] = 'yes';
										$main_content .= '<h2>Confirm change name</h2>
										<table border="0" cellpadding="1" cellspacing="1" width="650">
										<tr bgcolor="black"><td colspan="3"><font color="gold" size="4"><b>Confirm transaction</b></font></td></tr>
										<tr bgcolor="gold"><td width="100"><b>Name:</b></td><td width="550" colspan="2">'.$buy_offer['name'].'</td></tr>
										<tr bgcolor="gold"><td width="100"><b>Description:</b></td><td width="550" colspan="2">'.$buy_offer['description'].'</td></tr>
										<tr bgcolor="gold"><td width="100"><b>Cost:</b></td><td width="550" colspan="2"><b>'.$buy_offer['points'].' premium points</b> from your account</td></tr>
										<tr bgcolor="gold"><td width="100"><b>Current Name:</b></td><td width="550" colspan="2"><font color="red">'.$buy_player->getName().'</font></td></tr>
										<tr bgcolor="gold"><td width="100"><b>New Name:</b></td><td width="550" colspan="2"><font color="red">'.$buy_from.'</font></td></tr>
										<tr bgcolor="red"><td width="100"><b>Change Name?</b></td><td width="275" align="left">
										<form action="index.php?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="'.urlencode($buy_from).'"><input type="hidden" name="buy_name" value="'.urlencode($buy_name).'"><input type="submit" value="Accept"></form></td>
										<td align="right"><form action="index.php?subtopic=shopsystem" method="POST"><input type="submit" value="Cancel"></form></td></tr>
										</table> 
										';
										}
									}
								}
								else
								{
									$main_content .= 'Player with name <b>'.$buy_name.'</b> doesn\'t exist. Please <a href="index.php?subtopic=shopsystem&action=select_player&buy_id='.$buy_id.'">select other name</a>.';
								}
							}
							else
							{
								$main_content .= 'Invalid name format. Please <a href="index.php?subtopic=shopsystem&action=select_player&buy_id='.$buy_id.'">select other name</a> or contact with administrator.';
							}
						}
						else
						{
							$main_content .= 'For this item you need <b>'.$buy_offer['points'].'</b> points. You have only <b>'.$user_premium_points.'</b> premium points. Please <a href="index.php?subtopic=shopsystem">select other item</a> or buy premium points.';
						}
					}
					else
					{
						$main_content .= 'Offer with ID <b>'.$buy_id.'</b> doesn\'t exist. Please <a href="index.php?subtopic=shopsystem">select item</a> again.';
					}
				}
			}
		}
		if(!$set_session)
		{
			unset($_SESSION['viewed_confirmation_page']);
		}
	}
	elseif($action == 'show_history')
	{
		if(!$logged) {
			$main_content .= '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="gold"><td><font color="'.$char_color.'">'.$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 .= $item_received['from_nick'];
					$items_received_text .= '</td><td>'.$item_received['offer_id'].'</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>';
				}
			}
			$paccs_history_received = $SQL->query('SELECT * FROM '.$SQL->tableName('z_shop_history_pacc').' WHERE '.$SQL->fieldName('to_account').' = '.$SQL->quote($account_logged->getId()).' OR '.$SQL->fieldName('from_account').' = '.$SQL->quote($account_logged->getId()).';');
			if(is_object($paccs_history_received)) {
				foreach($paccs_history_received as $pacc_received)
				{
					if($account_logged->getId() == $pacc_received['to_account'])
						$char_color = 'green';
					else
						$char_color = 'red';
					$paccs_received_text .= '<tr bgcolor="gold"><td><font color="'.$char_color.'">'.$pacc_received['to_name'].'</font></td><td>';
					if($account_logged->getId() == $pacc_received['from_account'])
						$paccs_received_text .= '<i>Your account</i>';
					else
						$paccs_received_text .= $pacc_received['from_nick'];
					$paccs_received_text .= '</td><td>'.$pacc_received['pacc_days'].' days</td><td>'.$pacc_received['price'].' Points</td><td>'.date("j F Y, H:i:s", $pacc_received['trans_real']).'</td></tr>';
				}
			}
			$main_content .= '<center><h1>Transactions History</h1></center>';
			if(!empty($items_received_text))
			{
				$main_content .= '<h2>Item transactions</h2><table BORDER=0 CELLPADDING=1 CELLSPACING=1 WIDTH=100%><tr bgcolor="gold"><td><b>To:</b></td><td><b>From:</b></td><td><b>Offer name</b></td><td><b>Bought on page</b></td><td><b>Received on OTS</b></td></tr>'.$items_received_text.'</table><br />';
			}
			if(!empty($paccs_received_text))
			{
				$main_content .= '<h2>PACC transactions</h2><table BORDER=0 CELLPADDING=1 CELLSPACING=1 WIDTH=100%><tr bgcolor="gold"><td><b>To:</b></td><td><b>From:</b></td><td><b>Duration</b></td><td><b>Cost</b></td><td><b>Added:</b></td></tr>'.$paccs_received_text.'</table><br />';
			}
			if(empty($paccs_received_text) && empty($items_received_text))
				$main_content .= 'You did not buy/receive any item or PACC.';
		}
	}
	$main_content .= '<br><br><b><font color="green">You have premium points: </font></b>'.$user_premium_points;
}
else
	$main_content .= 'Shop system is blocked on this server. Admin must install this script (LUA and in database only, PHP is installed) on server and set <b>shop_system = "1"</b> in config.ini file';
?>
 
I GET THIS BUG


Fel

SQL-fråga:

INSERT INTO `z_shop_offer` ( `id` , `points` , `itemid1` , `count1` , `itemid2` , `count2` , `offer_type` , `offer_description` , `offer_name` , `level` , `pid` )
VALUES (
NULL , 10, 0, 12, 0, 0, 'pacc', 'Buy 12 days of premium account for yourself or your friend!', '12 Days of PACC', 0, 0
), (
NULL , 10, 0, 0, 0, 0, 'redskull', 'Remove Red Skull!', 'Remove Red Skull', 0, 0
), (
NULL , 10, 2160, 1, 0, 0, 'itemlogout', 'Crystal Coin', 'itemlogout', 0, 10
), (
NULL , 2, 0, 0, 0, 0, 'changename', 'Change Name', 'changename', 0, 0
)

MySQL sa: Dokumentation
#1054 - Unknown column 'level' in 'field list'
 
try to use this:
PHP:
INSERT INTO `z_shop_offer` ( `id` , `points` , `itemid1` , `count1` , `itemid2` , `count2` , `offer_type` , `offer_description` , `offer_name` , `pid` )
VALUES (
NULL , 10, 0, 12, 0, 0, 'pacc', 'Buy 12 days of premium account for yourself or your friend!', '12 Days of PACC', 0, 0
), (
NULL , 10, 0, 0, 0, 0, 'redskull', 'Remove Red Skull!', 'Remove Red Skull', 0, 0
), (
NULL , 10, 2160, 1, 0, 0, 'itemlogout', 'Crystal Coin', 'itemlogout', 0, 10
), (
NULL , 2, 0, 0, 0, 0, 'changename', 'Change Name', 'changename', 0, 0
)

might work, might not.
 
Can you make "decresefrags"??
1 Frag 5Points.
All Frags 20Points

Thats will be cool ;]
 
When i am trying to add this:

INSERT INTO `z_shop_offer` (`id`, `points`, `itemid1`, `count1`, `itemid2`, `count2`, `offer_type`, `offer_description`, `offer_name`, `level`, `pid`) VALUES
(NULL, 10, 0, 12, 0, 0, 'pacc', 'Buy 12 days of premium account for yourself or your friend!', '12 Days of PACC', 0, 0),
(NULL, 10, 0, 0, 0, 0, 'redskull', 'Remove Red Skull!', 'Remove Red Skull', 0, 0),
(NULL, 10, 2160, 1, 0, 0, 'itemlogout', 'Crystal Coin', 'itemlogout', 0, 10),
(NULL, 2, 0, 0, 0, 0, 'changename', 'Change Name', 'changename', 0, 0);


IT SAYS:
#1054 - Unknown column 'level' in 'field list'

why?
 
Use this one:

PHP:
INSERT INTO `z_shop_offer` (`id`, `points`, `itemid1`, `count1`, `itemid2`, `count2`, `offer_type`, `offer_description`, `offer_name`, `pid`, `free_cap`) VALUES
(1, 10, 0, 12, 0, 0, 'pacc', 'Buy 12 days of premium account for yourself or your friend!', '12 Days of PACC', 0, 0),
(6, 10, 0, 0, 0, 0, 'redskull', 'Remove Red Skull!', 'Remove Red Skull', 0, 0),
(8, 10, 2160, 1, 0, 0, 'itemlogout', 'Crystal Coin', 'itemlogout', 10, 100),
(9, 2, 0, 0, 0, 0, 'changename', 'Change Name', 'changename', 0, 0),
(11, 1, 0, 0, 0, 0, 'unban', 'UNBAN ACCOUNT', 'Unban Account', 0, 0);
 
Back
Top