Added Account transactions with History

Added Account transactions with History
This commit is contained in:
novgorodschi catalin
2026-05-21 11:23:45 +03:00
parent e6a3bb7db7
commit 878ecec687
8 changed files with 415 additions and 476 deletions
+1
View File
@@ -4,6 +4,7 @@
## --------------------------------------------------------------------------- ##
## Filename gold.tpl ##
## Developed by: aggenkeech ##
## Refactored by: Shadow ##
## License: TravianZ Project ##
## Copyright: TravianZ (c) 2010-2025. All rights reserved. ##
## ##
+15 -48
View File
@@ -1,69 +1,36 @@
<?php
#################################################################################
## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ##
## --------------------------------------------------------------------------- ##
## Filename usergold.tpl ##
## Developed by: aggenkeech ##
## License: TravianZ Project ##
## Copyright: TravianZ (c) 2010-2025. All rights reserved. ##
## ##
## Refactored by: Shadow ##
#################################################################################
if($_SESSION['access'] < ADMIN) die("Access Denied: You are not Admin!");
$id = $_SESSION['id']; ?>
?>
<form action="../GameEngine/Admin/Mods/gold_1.php" method="POST">
<input type="hidden" name="admid" id="admid" value="<?php echo $_SESSION['id']; ?>">
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
<table id="member" style="width:300px;">
<thead>
<tr>
<th colspan="2">Give Free gold for specific user</th>
</tr>
<tr>
<td>Amount</td>
<td></td>
</tr>
<tr><th colspan="2">Give Free gold for specific user</th></tr>
</thead>
<tbody>
<tr>
<td>
<center>
<b>How much gold?</b>
</center>
</td>
<td>
<center>
<input class="give_gold" name="gold" value="20" maxlength="4">&nbsp;
<img src="../img/admin/gold.gif" class="gold" alt="Gold" name="gold" title="Gold"/>
</center>
</td>
<td><center><b>How much gold?</b></center></td>
<td><center>
<input class="give_gold" name="gold" value="20" maxlength="6">&nbsp;
<img src="../img/admin/gold.gif" class="gold" alt="Gold" title="Gold"/>
</center></td>
</tr>
<tr>
<td>
<center>
<b>For which user (id)?</b>
</center>
</td>
<td>
<center>
<input class="give_gold" name="id" value="">&nbsp;
</center>
</td>
<td><center><b>For which user (id)?</b></center></td>
<td><center><input class="give_gold" name="id" value=""></center></td>
</tr>
<tr>
<td colspan="2">
<center>
<input type="image" src="../img/admin/b/ok1.gif" value="submit" title="Give Players Free Gold">
</center>
</td>
<td colspan="2"><center>
<input type="image" src="../img/admin/b/ok1.gif" value="submit" title="Give Player Free Gold">
</center></td>
</tr>
</tbody>
</table>
</form>
<?php
if(isset($_GET['g']))
{
echo '<br /><br /><font color="Red"><b>Gold Added</font></b>';
}
?>
<?php if(isset($_GET['g'])){ echo '<br><br><font color="green"><b>Gold Added</b></font>'; } ?>
+67 -40
View File
@@ -1,51 +1,78 @@
<?php
#################################################################################
## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ##
## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ##
## --------------------------------------------------------------------------- ##
## Filename cp.php ##
## Developed by: aggenkeech ##
## License: TravianZ Project ##
## Copyright: TravianZ (c) 2010-2025. All rights reserved. ##
## ##
## Project: TravianZ (Refactor incremental) ##
## File: additional.tpl ##
## Description: Implement Gold Log ##
## Made by: Shadow ##
## License: TravianZ Project ##
## Copyright: TravianZ (c) 2010-2026. All rights reserved. ##
## URLs: https://travianz.org ##
## https://github.com/Shadowss/TravianZ ##
## ##
#################################################################################
include_once("../../config.php");
include_once("../../Database.php");
if (!isset($_SESSION)) session_start();
if($_SESSION['access'] < 9) die("Access Denied: You are not Admin!");
if(($_SESSION['access']?? 0) < ADMIN) die("Access Denied: You are not Admin!");
$id = (int) $_POST['id'];
$admid = $_POST['admid'];
// --- INPUT ---
$id = (int)($_POST['id']?? 0);
$admid = (int)($_POST['admid']?? 0);
$access = (int)($_POST['access']?? 2);
$newGold = (int)($_POST['gold']?? 0);
$sit1 = (int)($_POST['sitter1']?? 0);
$sit2 = (int)($_POST['sitter2']?? 0);
$protect = time() + ((int)($_POST['protect']?? 0) * 86400);
$cp = (int)($_POST['cp']?? 0);
$ap = (int)($_POST['off']?? 0);
$dp = (int)($_POST['def']?? 0);
$rr = (int)($_POST['res']?? 0);
$apall = (int)($_POST['ooff']?? 0);
$dpall = (int)($_POST['odef']?? 0);
//$sql = mysqli_query($GLOBALS["link"], "SELECT * FROM ".TB_PREFIX."users WHERE id = ".$admid."");
//$access = mysqli_fetch_array($sql);
//$sessionaccess = $access['access'];
if (!isset($_SESSION)) {
session_start();
if($id <= 0) die("Invalid user");
// --- GOLD LOGIC ---
$oldGold = (int)$database->getUserField($id, 'gold', 1);
$diffGold = $newGold - $oldGold;
// --- UPDATE USER (prepared-style, fără escape manual) ---
$database->query("
UPDATE ".TB_PREFIX."users SET
access = $access,
gold = $newGold,
sit1 = $sit1,
sit2 = $sit2,
protect = $protect,
cp = $cp,
ap = $ap,
dp = $dp,
RR = $rr,
apall = $apall,
dpall = $dpall
WHERE id = $id
");
// --- LOG GOLD dacă s-a modificat ---
if($diffGold!== 0){
$vill = $database->getVillagesID($id);
$wid = $vill[0]?? 0;
$action = $diffGold > 0? 'Admin added Gold' : 'Admin removed Gold';
$details = 'Admin adjustment by '.($session->username?? 'Admin');
$now = time();
$database->query("
INSERT INTO ".TB_PREFIX."gold_fin_log
(wid, uid, action, gold, time, details)
VALUES ($wid, $id, '$action', $diffGold, $now, '$details')
");
}
if($_SESSION['access'] != ADMIN) die("<h1><font color=\"red\">Access Denied: You are not Admin!</font></h1>");
foreach ($_POST as $key => $value) {
$_POST[$key] = $database->escape($value);
}
$access = (int) $_POST['access'];
$dur = (int) $_POST['protect'] * 86400;
$protection = (time() + $dur);
mysqli_query($GLOBALS["link"], "UPDATE ".TB_PREFIX."users SET
access = ".$access.",
gold = ".(int) $_POST['gold'].",
sit1 = '".(int) $_POST['sitter1']."',
sit2 = '".(int) $_POST['sitter2']."',
protect = '".$protection."',
cp = ".(int) $_POST['cp'].",
ap = '".(int) $_POST['off']."',
dp = '".(int) $_POST['def']."',
RR = '".(int) $_POST['res']."',
apall = '".(int) $_POST['ooff']."',
dpall = '".(int) $_POST['odef']."'
WHERE id = ".$id) or die(mysqli_error($database->dblink));
header("Location: ../../../Admin/admin.php?p=player&uid=".$id."");
?>
// --- REDIRECT ---
header("Location:../../../Admin/admin.php?p=player&uid=".$id);
exit;
+34 -14
View File
@@ -2,8 +2,9 @@
#################################################################################
## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ##
## --------------------------------------------------------------------------- ##
## Filename gold.php ##
## Filename gold.php ##
## Developed by: aggenkeech ##
## Refactored by: Shadow ##
## License: TravianZ Project ##
## Copyright: TravianZ (c) 2010-2025. All rights reserved. ##
## ##
@@ -14,28 +15,47 @@ include_once("../../config.php");
error_reporting(E_ALL);
// go max 5 levels up - we don't have folders that go deeper than that
// autoloader
$autoprefix = '';
for ($i = 0; $i < 5; $i++) {
$autoprefix = str_repeat('../', $i);
if (file_exists($autoprefix.'autoloader.php')) {
// we have our path, let's leave
break;
}
if (file_exists($autoprefix.'autoloader.php')) break;
}
include_once($autoprefix."GameEngine/Database.php");
$session = (int) $_POST['admid'];
$admid = (int)($_POST['admid'] ?? 0);
$amount = (int)($_POST['gold'] ?? 0);
$sql = mysqli_query($GLOBALS["link"], "SELECT * FROM ".TB_PREFIX."users WHERE id = ".$session."");
$access = mysqli_fetch_array($sql);
$sessionaccess = $access['access'];
if($amount == 0){
header("Location: ../../../Admin/admin.php?p=gold");
exit;
}
if($sessionaccess != 9) die("<h1><font color=\"red\">Access Denied: You are not Admin!</font></h1>");
// verificare admin
$check = mysqli_query($GLOBALS["link"], "SELECT access, username FROM ".TB_PREFIX."users WHERE id = $admid");
$acc = mysqli_fetch_assoc($check);
if(!$acc || $acc['access'] != 9) die("<h1><font color=\"red\">Access Denied</font></h1>");
$q = "UPDATE ".TB_PREFIX."users SET gold = gold + ".(int) $_POST['gold']." WHERE id != '0'";
mysqli_query($GLOBALS["link"], $q) or die(mysqli_error($database->dblink));
// 1. UPDATE gold la toți (id > 3 = sare peste Natars etc)
mysqli_query($GLOBALS["link"], "UPDATE ".TB_PREFIX."users SET gold = gold + $amount WHERE id > 3") or die(mysqli_error($GLOBALS["link"]));
// 2. LOG în admin_log
mysqli_query($GLOBALS["link"], "INSERT INTO ".TB_PREFIX."admin_log VALUES (0, $admid, 'Added <b>$amount</b> gold to ALL players', ".time().")");
// 3. LOG în gold_fin_log pentru fiecare jucător
$users = mysqli_query($GLOBALS["link"], "SELECT id FROM ".TB_PREFIX."users WHERE id > 3");
$now = time();
$adminName = $acc['username'];
$details = mysqli_real_escape_string($GLOBALS["link"], 'Mass gift by '.$adminName);
while($u = mysqli_fetch_assoc($users)){
$uid = (int)$u['id'];
$vill = mysqli_fetch_assoc(mysqli_query($GLOBALS["link"], "SELECT wref FROM ".TB_PREFIX."vdata WHERE owner = $uid LIMIT 1"));
$wid = (int)($vill['wref'] ?? 0);
mysqli_query($GLOBALS["link"], "INSERT INTO ".TB_PREFIX."gold_fin_log (wid, uid, action, gold, time, details) VALUES ($wid, $uid, 'Admin added Gold', $amount, $now, '$details')");
}
header("Location: ../../../Admin/admin.php?p=gold&g");
exit;
?>
+31 -23
View File
@@ -1,39 +1,47 @@
<?php
#################################################################################
## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ##
## --------------------------------------------------------------------------- ##
## Filename gold_1.php ##
## Filename gold_1.php ##
## Developed by: aggenkeech ##
## License: TravianZ Project ##
## Copyright: TravianZ (c) 2010-2025. All rights reserved. ##
## ##
## Refactored by: Shadow ##
#################################################################################
if (!isset($_SESSION)) session_start();
if($_SESSION['access'] < 9) die("Access Denied: You are not Admin!");
include_once("../../config.php");
// go max 5 levels up - we don't have folders that go deeper than that
$autoprefix = '';
for ($i = 0; $i < 5; $i++) {
$autoprefix = str_repeat('../', $i);
if (file_exists($autoprefix.'autoloader.php')) {
// we have our path, let's leave
break;
}
include_once("../../config.php");
include_once("../../Database.php");
$admid = (int)($_POST['admid'] ?? 0);
$id = (int)($_POST['id'] ?? 0);
$amount = (int)($_POST['gold'] ?? 0);
if($id <= 0 || $amount == 0){
header("Location: ../../../Admin/admin.php?p=usergold");
exit;
}
include_once($autoprefix."GameEngine/Database.php");
// verificare admin
$check = mysqli_query($GLOBALS["link"], "SELECT access, username FROM ".TB_PREFIX."users WHERE id = $admid");
$acc = mysqli_fetch_assoc($check);
if(!$acc || $acc['access'] != 9) die("<h1><font color=\"red\">Access Denied</font></h1>");
$session = (int) $_POST['admid'];
$id = (int) $_POST['id'];
// 1. UPDATE GOLD
mysqli_query($GLOBALS["link"], "UPDATE ".TB_PREFIX."users SET gold = gold + $amount WHERE id = $id") or die(mysqli_error($GLOBALS["link"]));
$sql = mysqli_query($GLOBALS["link"], "SELECT * FROM ".TB_PREFIX."users WHERE id = ".$session."");
$access = mysqli_fetch_array($sql);
$sessionaccess = $access['access'];
// 2. ADMIN LOG
$name = mysqli_fetch_assoc(mysqli_query($GLOBALS["link"], "SELECT username FROM ".TB_PREFIX."users WHERE id = $id"))['username'];
$name = mysqli_real_escape_string($GLOBALS["link"], $name);
mysqli_query($GLOBALS["link"], "INSERT INTO ".TB_PREFIX."admin_log VALUES (0, $admid, 'Added <b>$amount</b> gold to user <a href=\'admin.php?p=player&uid=$id\'>$name</a>', ".time().")");
if($sessionaccess != 9) die("<h1><font color=\"red\">Access Denied: You are not Admin!</font></h1>");
// 3. GOLD_FIN_LOG (pentru a2b2.php)
$vill = mysqli_fetch_assoc(mysqli_query($GLOBALS["link"], "SELECT wref FROM ".TB_PREFIX."vdata WHERE owner = $id LIMIT 1"));
$wid = (int)($vill['wref'] ?? 0);
$action = $amount > 0 ? 'Admin added Gold' : 'Admin removed Gold';
$adminName = $acc['username'];
$details = mysqli_real_escape_string($GLOBALS["link"], 'Admin gift by '.$adminName);
$now = time();
mysqli_query($GLOBALS["link"], "UPDATE ".TB_PREFIX."users SET gold = gold + ".(int) $_POST['gold']." WHERE id = ".$id."");
mysqli_query($GLOBALS["link"], "INSERT INTO ".TB_PREFIX."gold_fin_log (wid, uid, action, gold, time, details) VALUES ($wid, $id, '$action', $amount, $now, '$details')") or die(mysqli_error($GLOBALS["link"]));
header("Location: ../../../Admin/admin.php?p=usergold&g");
exit;
?>
+10 -8
View File
@@ -1748,16 +1748,18 @@ class Building {
// gold update
if ($countMasterGold || $countPlus2Gold) {
$spent = ($countMasterGold && $countPlus2Gold) ? 3 : 2;
$newgold = $session->gold - $spent;
$newgold = $session->gold -
(($countMasterGold && $countPlus2Gold) ? 3 : 2);
$database->updateUserField($session->uid, 'gold', $newgold, 1);
$database->updateUserField(
$session->uid,
'gold',
$newgold,
1
);
// LOG complet
$database->query("INSERT INTO ".TB_PREFIX."gold_fin_log
(wid, uid, action, gold, time, details)
VALUES (".$village->wid.", ".$session->uid.", 'Finish all constructions', -".$spent.", ".time().", 'Finish construction and research with gold')");
$session->gold = $newgold;
$_SESSION['gold'] = $newgold;
}
// un singur query
+3 -3
View File
@@ -14,9 +14,9 @@ $start_timer = $generator->pageLoadTimeStart();
## Developed by: Dzoki & Advocaite & Donnchadh ##
## Reworked by: Shadow ##
## License: TravianZ Project ##
## Copyright: TravianZ (c) 2010-2018. All rights reserved. ##
## URLs: http://travian.shadowss.ro ##
## Source code: https://github.com/Shadowss/TravianZ ##
## Copyright: TravianZ (c) 2010-2026. All rights reserved. ##
## URLs: https://travianz.org ##
## https://github.com/Shadowss/TravianZ ##
## ##
#################################################################################
+254 -340
View File
@@ -5,376 +5,290 @@ $start_timer = $generator->pageLoadTimeStart();
#################################################################################
## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ##
## --------------------------------------------------------------------------- ##
## Project: TravianZ ##
## Filename a2b2.php ##
## Developed by: Dzoki ##
## License: TravianZ Project ##
## Copyright: TravianZ (c) 2010-2026. All rights reserved. ##
## URLs: http://travian.shadowss.ro ##
## Source code: https://github.com/Shadowss/TravianZ ##
## Project: TravianZ ##
## Version: 18.05.2026 ##
## Filename: a2b2.php ##
## Developed by: Dzoki ##
## Refactored by: Shadow ##
## License: TravianZ Project ##
## Copyright: TravianZ (c) 2010-2026. All rights reserved. ##
## URLs: https://travianz.org ##
## https://github.com/Shadowss/TravianZ ##
## ##
#################################################################################
use App\Utils\AccessLogger;
include_once("GameEngine/Village.php");
AccessLogger::logRequest();
$amount = $_SESSION['amount'];
if(isset($_GET['newdid'])) {
$_SESSION['wid'] = $_GET['newdid'];
header("Location: ".$_SERVER['PHP_SELF']);
exit;
$uid = (int)$session->uid;
$amount = (int)($_SESSION['amount'] ?? 0);
$packages = [
199 => 60,
499 => 120,
999 => 360,
1999 => 1000,
4999 => 2000
];
if (isset($_GET['newdid'])) {
$_SESSION['wid'] = (int)$_GET['newdid'];
header("Location: a2b2.php");
exit;
}
$building->procBuild($_GET);
$transactionProcessed = false;
$oldBalance = 0;
$newBalance = 0;
$goldAdded = 0;
if (isset($packages[$amount]) && $amount > 0) {
$goldAdded = $packages[$amount];
$result = mysqli_query($database->dblink, "SELECT gold FROM " . TB_PREFIX . "users WHERE id = $uid LIMIT 1");
$user = mysqli_fetch_assoc($result);
$oldBalance = (int)$user['gold'];
mysqli_query($database->dblink, "UPDATE " . TB_PREFIX . "users SET gold = gold + $goldAdded WHERE id = $uid");
$result = mysqli_query($database->dblink, "SELECT gold FROM " . TB_PREFIX . "users WHERE id = $uid LIMIT 1");
$user = mysqli_fetch_assoc($result);
$newBalance = (int)$user['gold'];
$transactionProcessed = true;
$_SESSION['amount'] = 0;
}
else $building->procBuild($_GET);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title><?php echo SERVER_NAME . ' - Account transactions' ?></title>
<link rel="shortcut icon" href="favicon.ico"/>
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="imagetoolbar" content="no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script src="mt-full.js?0faab" type="text/javascript"></script>
<script src="unx.js?f4b7h" type="text/javascript"></script>
<script src="new.js?0faab" type="text/javascript"></script>
<link href="<?php echo GP_LOCATE; ?>lang/en/lang.css?f4b7d" rel="stylesheet" type="text/css" />
<link href="<?php echo GP_LOCATE; ?>lang/en/compact.css?f4b7i" rel="stylesheet" type="text/css" />
<?php
if($session->gpack == null || GP_ENABLE == false) {
echo "
<link href='".GP_LOCATE."travian.css?e21d2' rel='stylesheet' type='text/css' />
<link href='".GP_LOCATE."lang/en/lang.css?e21d2' rel='stylesheet' type='text/css' />";
} else {
echo "
<link href='".$session->gpack."travian.css?e21d2' rel='stylesheet' type='text/css' />
<link href='".$session->gpack."lang/en/lang.css?e21d2' rel='stylesheet' type='text/css' />";
}
?>
<script type="text/javascript">
<title><?php echo SERVER_NAME . ' - Account transactions'; ?></title>
<link rel="shortcut icon" href="favicon.ico"/>
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="imagetoolbar" content="no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script src="mt-full.js?0faab" type="text/javascript"></script>
<script src="unx.js?f4b7h" type="text/javascript"></script>
<script src="new.js?0faab" type="text/javascript"></script>
<link href="<?php echo GP_LOCATE; ?>lang/en/lang.css?f4b7d" rel="stylesheet" type="text/css" />
<link href="<?php echo GP_LOCATE; ?>lang/en/compact.css?f4b7i" rel="stylesheet" type="text/css" />
window.addEvent('domready', start);
</script>
<?php
if ($session->gpack == null || GP_ENABLE == false) {
echo '<link href="' . GP_LOCATE . 'travian.css?e21d2" rel="stylesheet" type="text/css" />';
echo '<link href="' . GP_LOCATE . 'lang/en/lang.css?e21d2" rel="stylesheet" type="text/css" />';
} else {
echo '<link href="' . $session->gpack . 'travian.css?e21d2" rel="stylesheet" type="text/css" />';
echo '<link href="' . $session->gpack . 'lang/en/lang.css?e21d2" rel="stylesheet" type="text/css" />';
}
?>
<script type="text/javascript">window.addEvent('domready', start);</script>
</head>
<body class="v35 ie ie8">
<body class="v35">
<div class="wrapper">
<img style="filter:chroma();" src="img/x.gif" id="msfilter" alt="" />
<div id="dynamic_header">
</div>
<?php include("Templates/header.tpl"); ?>
<div id="mid">
<?php include("Templates/menu.tpl"); ?>
<?php include("Templates/Plus/pmenu.tpl"); ?>
<h1>Account transactions</h1>
<div id="products">
<?php
if ($amount == 199) {
// Statement retrieve Gold Package A
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds = mysqli_fetch_array($MyGold);
$goldnow = $golds['6'] + 60;
mysqli_query($database->dblink,"UPDATE ".TB_PREFIX."users set gold = '".$goldnow."' where `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds1 = mysqli_fetch_array($MyGold);
?><p>Thank you for your purchase here at <?php echo SERVER_NAME ?></p><p>Below you see the entry record. Out of it, you can observe your old as well as your new account balance.</p>
<table class="plusFunctions" cellpadding="1" cellspacing="1">
<thead>
<tr>
<img style="filter:chroma();" src="img/x.gif" id="msfilter" alt="" />
<div id="dynamic_header"></div>
<th colspan="5" height="20">Record of <?php echo date('d.m.Y'); ?></th>
</tr>
<tr>
<td align="center">Description</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td align="center">Action</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td>Date</td>
</tr>
</thead>
<tbody>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (old)</b></td>
<td class="desc"><div style="text-align: center"><?php echo $golds['6']; ?></div></td>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="act"><div style="text-align: center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b><font color="#71D000">Package</font></b></div></td>
<td class="desc"><div style="text-align: center">60 Gold</div></td>
<td class="act"><div style="text-align: center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (new)</b></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center"><?php echo $golds1['6']; ?></div></td>
<td class="act"><div style="text-align: center"><?php echo date('d.m.Y H:i:s'); ?></div></td>
</tr>
</tbody></table>
<p>Please verify the information.<br />It will let us know if the data is incorrect.</p>
<p>Please mail your username, package, order time and email used to <a href="mailto:<?php echo (defined('PAYPAL_EMAIL') ? PAYPAL_EMAIL : 'novgorodschi@icloud.com') ?>">our billing address</a>.</p>
<?php
<?php include("Templates/header.tpl"); ?>
}
if ($amount == 499) {
// Statement retrieve Gold Package B
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds = mysqli_fetch_array($MyGold);
$goldnow = $golds['6'] + 120;
mysqli_query($database->dblink,"UPDATE ".TB_PREFIX."users set gold = '".$goldnow."' where `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds1 = mysqli_fetch_array($MyGold);
?><p>Thank you for your purchase here at <?php echo SERVER_NAME ?>.</p><p>Below you see the entry record. Out of it, you can observe your old as well as your new account balance.</p>
<table class="plusFunctions" cellpadding="1" cellspacing="1">
<thead>
<tr>
<div id="mid">
<?php include("Templates/menu.tpl"); ?>
<?php include("Templates/Plus/pmenu.tpl"); ?>
<th colspan="5" height="20">Record of <?php echo date('d.m.Y'); ?></th>
</tr>
<tr>
<td align="center">Description</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td align="center">Action</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td>Date</td>
</tr>
</thead>
<tbody>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (old)</b></td>
<td class="desc"><div style="text-align: center"><?php echo $golds['6']; ?></div></td>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="act"><div style="text-align: center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b><font color="#71D000">Package</font></b></div></td>
<td class="desc"><div style="text-align: center">60 Gold</div></td>
<td class="act"><div style="text-align: center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (new)</b></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center"><?php echo $golds1['6']; ?></div></td>
<td class="act"><div style="text-align: center"><?php echo date('d.m.Y H:i:s'); ?></div></td>
</tr>
</tbody></table>
<p>Please verify the information.<br />It will let us know if the data is incorrect.</p>
<p>Please mail your username, package, order time and email used to <a href="mailto:<?php echo (defined('PAYPAL_EMAIL') ? PAYPAL_EMAIL : 'novgorodschi@icloud.com') ?>">our billing address</a>.</p>
<?php
}
if ($amount == 999) {
// Statement retrieve Gold Package C
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds = mysqli_fetch_array($MyGold);
$goldnow = $golds['6'] + 360;
mysqli_query($database->dblink,"UPDATE ".TB_PREFIX."users set gold = '".$goldnow."' where `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds1 = mysqli_fetch_array($MyGold);
?><p>Thank you for your purchase here at <?php echo SERVER_NAME ?>.</p><p>Below you see the entry record. Out of it, you can observe your old as well as your new account balance.</p>
<table class="plusFunctions" cellpadding="1" cellspacing="1">
<thead>
<tr>
<th colspan="5" height="20">Record of <?php echo date('d.m.Y'); ?></th>
</tr>
<tr>
<td align="center">Description</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td align="center">Action</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td>Date</td>
</tr>
</thead>
<tbody>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (old)</b></td>
<td class="desc"><div style="text-align: center"><?php echo $golds['6']; ?></div></td>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="act"><div style="text-align: center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b><font color="#71D000">Package</font></b></div></td>
<td class="desc"><div style="text-align: center">60 Gold</div></td>
<td class="act"><div style="text-align: center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (new)</b></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center"><?php echo $golds1['6']; ?></div></td>
<td class="act"><div style="text-align: center"><?php echo date('d.m.Y H:i:s'); ?></div></td>
</tr>
</tbody></table>
<p>Please verify the information.<br />It will let us know if the data is incorrect.</p>
<p>Please mail your username, package, order time and email used to <a href="mailto:<?php echo (defined('PAYPAL_EMAIL') ? PAYPAL_EMAIL : 'novgorodschi@icloud.com') ?>">our billing address</a>.</p>
<?php
}
if ($amount == 1999) {
// Statement retrieve Gold Package D
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds = mysqli_fetch_array($MyGold);
$goldnow = $golds['6'] + 1000;
mysqli_query($database->dblink,"UPDATE ".TB_PREFIX."users set gold = '".$goldnow."' where `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds1 = mysqli_fetch_array($MyGold);
?><p>Thank you for your purchase here at <?php echo SERVER_NAME ?>.</p><p>Below you see the entry record. Out of it, you can observe your old as well as your new account balance.</p>
<table class="plusFunctions" cellpadding="1" cellspacing="1">
<thead>
<tr>
<th colspan="5" height="20">Record of <?php echo date('d.m.Y'); ?></th>
</tr>
<tr>
<td align="center">Description</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td align="center">Action</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td>Date</td>
</tr>
</thead>
<tbody>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (old)</b></td>
<td class="desc"><div style="text-align: center"><?php echo $golds['6']; ?></div></td>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="act"><div style="text-align: center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b><font color="#71D000">Package</font></b></div></td>
<td class="desc"><div style="text-align: center">60 Gold</div></td>
<td class="act"><div style="text-align: center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (new)</b></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center"><?php echo $golds1['6']; ?></div></td>
<td class="act"><div style="text-align: center"><?php echo date('d.m.Y H:i:s'); ?></div></td>
</tr>
</tbody></table>
<p>Please verify the information.<br />It will let us know if the data is incorrect.</p>
<p>Please mail your username, package, order time and email used to <a href="cata7007@gmail.com">our billing address</a>.</p>
<?php
}
if ($amount == 4999) {
// Statement retrieve Gold Package E
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds = mysqli_fetch_array($MyGold);
$goldnow = $golds['6'] + 2000;
mysqli_query($database->dblink,"UPDATE ".TB_PREFIX."users set gold = '".$goldnow."' where `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds1 = mysqli_fetch_array($MyGold);
?><p>Thank you for your purchase here at <?php echo SERVER_NAME ?>.</p><p>Below you see the entry record. Out of it, you can observe your old as well as your new account balance.</p>
<table class="plusFunctions" cellpadding="1" cellspacing="1">
<thead>
<tr>
<th colspan="5" height="20">Record of <?php echo date('d.m.Y'); ?></th>
</tr>
<tr>
<td align="center">Description</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td align="center">Action</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td>Date</td>
</tr>
</thead>
<tbody>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (old)</b></td>
<td class="desc"><div style="text-align: center"><?php echo $golds['6']; ?></div></td>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="act"><div style="text-align: center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b><font color="#71D000">Package</font></b></div></td>
<td class="desc"><div style="text-align: center">60 Gold</div></td>
<td class="act"><div style="text-align: center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (new)</b></td>
<td class="desc"><div style="text-align: center">&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b>&nbsp;</b></div></td>
<td class="desc"><div style="text-align: center"><?php echo $golds1['6']; ?></div></td>
<td class="act"><div style="text-align: center"><?php echo date('d.m.Y H:i:s'); ?></div></td>
</tr>
</tbody></table>
<p>Please verify the information.<br />It will let us know if the data is incorrect.</p>
<p>Please mail your username, package, order time and email used to <a href="mailto:<?php echo (defined('PAYPAL_EMAIL') ? PAYPAL_EMAIL : 'novgorodschi@icloud.com') ?>">our billing address</a>.</p>
<?php
}
if ($amount == 0)
{
$MyGold = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."users WHERE `id`='".$session->uid."'") or die(mysqli_error($database->dblink));
$golds = mysqli_fetch_array($MyGold);
?>
<h1>Account transactions</h1>
<div id="products">
<?php if ($transactionProcessed) { ?>
<!-- Partea de mulțumire după plată -->
<p>Thank you for your purchase here at <?php echo SERVER_NAME; ?>.</p>
<p>Below you see the entry record. Out of it, you can observe your old as well as your new account balance.</p>
<p>Here you can see your current account statement.</p>
<table class="plusFunctions" cellpadding="1" cellspacing="1">
<thead>
<tr>
<table class="plusFunctions" cellpadding="1" cellspacing="1">
<thead>
<tr><th colspan="5" height="20">Record of <?php echo date('d.m.Y'); ?></th></tr>
<tr>
<td align="center">Description</td>
<td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td>
<td align="center">Action</td>
<td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td>
<td align="center">Date</td>
</tr>
</thead>
<tbody>
<!-- tabelul cu old / package / new balance -->
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (old)</b></td>
<td class="desc"><div style="text-align:center"><?php echo $oldBalance; ?></div></td>
<td class="desc"><div style="text-align:center">&nbsp;</div></td>
<td class="desc"><div style="text-align:center">&nbsp;</div></td>
<td class="act"><div style="text-align:center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><div style="text-align:center">&nbsp;</div></td>
<td class="desc"><div style="text-align:center">&nbsp;</div></td>
<td class="desc"><div style="text-align:center"><b><font color="#71D000">Package</font></b></div></td>
<td class="desc"><div style="text-align:center"><?php echo $goldAdded; ?> Gold</div></td>
<td class="act"><div style="text-align:center">&nbsp;</div></td>
</tr>
<tr>
<td class="desc"><b>&nbsp;&nbsp;Account Balance (new)</b></td>
<td class="desc"><div style="text-align:center">&nbsp;</div></td>
<td class="desc"><div style="text-align:center">&nbsp;</div></td>
<td class="desc"><div style="text-align:center"><?php echo $newBalance; ?></div></td>
<td class="act"><div style="text-align:center"><?php echo date('d.m.Y H:i:s'); ?></div></td>
</tr>
</tbody>
</table>
<th colspan="5" height="20">Record of <?php echo date('d.m.Y'); ?></th>
</tr>
<tr>
<td align="center">Description</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td align="center">Action</td><td align="center"><img src="img/x.gif" class="gold" alt="Gold" title="Gold" /></td><td>Date</td></tr>
</thead>
<tbody>
<tr>
<td class="desc"><b>Current account balance</b></td>
<td class="desc"><div style="text-align: center">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></td>
<td class="desc"><div style="text-align: center"><b>Account inquiry</b></div></td>
<td class="desc"><div style="text-align: center"><?php echo $golds['6']; ?></div></td>
<td class="act"><div style="text-align: center"><?php echo date('d.m.Y H:i:s'); ?></div></td>
</tr>
</tbody></table>
<p>Please verify the information.<br />It will let us know if the data is incorrect.</p>
<p>Please mail your username, package, order time and email used to <a href="mailto:<?php echo (defined('PAYPAL_EMAIL') ? PAYPAL_EMAIL : 'novgorodschi@icloud.com') ?>">our billing address</a>.</p>
<?php
}
<p>Please verify the information.<br>It will let us know if the data is incorrect.</p>
<p>Please mail your username, package, order time and email used to
<a href="mailto:<?php echo defined('PAYPAL_EMAIL') ? PAYPAL_EMAIL : 'novgorodschi@icloud.com'; ?>">our billing address</a>.</p>
?>
<?php $_SESSION['amount'] = 0; ?>
<?php } else { ?>
<!-- Partea cu istoricul normal -->
<?php
$result = mysqli_query($database->dblink, "SELECT gold FROM ".TB_PREFIX."users WHERE id = $uid LIMIT 1");
$golds = mysqli_fetch_assoc($result);
$stats = mysqli_fetch_assoc(mysqli_query($database->dblink, "
SELECT
SUM(CASE WHEN gold > 0 THEN gold ELSE 0 END) as received,
SUM(CASE WHEN gold < 0 THEN -gold ELSE 0 END) as spent
FROM ".TB_PREFIX."gold_fin_log WHERE uid = $uid
"));
$received = (int)($stats['received'] ?? 0);
$spent = (int)($stats['spent'] ?? 0);
?>
<p>Here you can see your current account statement.</p>
<p>Current balance: <img src="img/x.gif" class="gold" alt="Gold" /> <b><?php echo (int)$golds['gold']; ?></b>
&nbsp; | &nbsp; Total received: <b style="color:#71D000;">+<?php echo $received; ?></b>
&nbsp; | &nbsp; Total spent: <b style="color:#FF6F0F;">-<?php echo $spent; ?></b></p>
<!-- Tabelul cu istoricul (codul tău complet) -->
<table class="plusFunctions" cellpadding="1" cellspacing="1">
<thead>
<tr>
<th colspan="6" height="20">Gold history</th>
</tr>
<tr>
<td align="center">Date & Time</td>
<td align="center">Village</td>
<td align="center">Action</td>
<td align="center">Details</td>
<td align="center">
<img src="img/x.gif" class="gold" alt="Gold" title="Gold" />
</td>
<td align="center">Balance</td>
</tr>
</thead>
<!-- AICI INCEPE PROBLEMA -->
<tbody>
<?php
$q = mysqli_query(
$database->dblink,
"SELECT l.*, v.name as vname
FROM ".TB_PREFIX."gold_fin_log l
LEFT JOIN ".TB_PREFIX."vdata v ON v.wref = l.wid
WHERE l.uid = $uid
ORDER BY l.time DESC
LIMIT 200"
);
$balance = (int)$golds['gold'];
if (mysqli_num_rows($q) > 0) {
while ($r = mysqli_fetch_assoc($q)) {
$date = date('d.m.Y H:i:s', $r['time']);
$villageName = !empty($r['vname']) ? htmlspecialchars($r['vname'], ENT_QUOTES, 'UTF-8') : '-';
$action = htmlspecialchars($r['action'], ENT_QUOTES, 'UTF-8');
$details = htmlspecialchars(($r['details'] ?? ''), ENT_QUOTES, 'UTF-8');
$gold = (int)$r['gold'];
if (stripos($details, 'Mass gift') !== false) {
$action = 'Admin Gift (All)';
$details = str_replace('Mass gift by ', 'by ', $details);
} elseif (stripos($details, 'gift by') !== false) {
$action = 'Admin Gift';
}
$color = $gold < 0 ? '#FF6F0F' : '#71D000';
$sign = $gold > 0 ? '+' : '';
echo '<tr>';
echo '<td class="desc"><div style="text-align:center">'.$date.'</div></td>';
echo '<td class="desc"><div style="text-align:center">'.$villageName.'</div></td>';
echo '<td class="desc"><div style="text-align:center"><b>'.$action.'</b></div></td>';
echo '<td class="desc"><div style="text-align:center"><span style="color:#666;font-size:11px">'.$details.'</span></div></td>';
echo '<td class="desc"><div style="text-align:center"><font color="'.$color.'"><b>'.$sign.$gold.'</b></font></div></td>';
echo '<td class="act"><div style="text-align:center">'.$balance.'</div></td>';
echo '</tr>';
$balance -= $gold;
}
} else {
echo '
<tr>
<td colspan="6" class="desc">
<div style="text-align:center;padding:8px;">
No transactions yet.
</div>
</td>
</tr>';
}
?>
</tbody>
<!-- AICI SE TERMINA PROBLEMA -->
</table>
<p>Please verify the information.<br>It will let us know if the data is incorrect.</p>
<p>Please mail your username, package, order time and email used to
<a href="mailto:<?php echo defined('PAYPAL_EMAIL') ? PAYPAL_EMAIL : 'cata7007@gmail.com'; ?>">our billing address</a>.</p>
<?php } ?>
</div> <!-- #products -->
</div> <!-- #mid -->
<br /><br /><br /><br />
<div id="side_info">
<?php
include("Templates/multivillage.tpl");
include("Templates/quest.tpl");
include("Templates/news.tpl");
if (!NEW_FUNCTIONS_DISPLAY_LINKS) {
echo "<br><br><br><br>";
include("Templates/links.tpl");
}
?>
</div>
<div class="clear"></div>
</div> <!-- .wrapper -->
</div>
</div>
<br /><br /><br /><br /><div id="side_info">
<?php
include("Templates/multivillage.tpl");
include("Templates/quest.tpl");
include("Templates/news.tpl");
if(!NEW_FUNCTIONS_DISPLAY_LINKS) {
echo "<br><br><br><br>";
include("Templates/links.tpl");
}
?>
</div>
<div class="clear"></div>
</div>
<div class="footer-stopper"></div>
<div class="clear"></div>
<?php
include("Templates/footer.tpl");
include("Templates/res.tpl");
include("Templates/res.tpl"); // ← foarte important aici
?>
<div id="stime">
<div id="ltime">
<div id="ltimeWrap">
<?php echo CALCULATED_IN;?> <b><?php
echo round(($generator->pageLoadTimeEnd()-$start_timer)*1000);
?></b> ms
<br /><?php echo SERVER_TIME;?> <span id="tp1" class="b"><?php echo date('H:i:s'); ?></span>
</div>
</div>
<div id="stime">
<div id="ltime">
<div id="ltimeWrap">
<?php echo CALCULATED_IN; ?> <b><?php echo round(($generator->pageLoadTimeEnd() - $start_timer) * 1000); ?></b> ms
<br /><?php echo SERVER_TIME; ?> <span id="tp1" class="b"><?php echo date('H:i:s'); ?></span>
</div>
</div>
</div>
<div id="ce"></div>
</body>
</html>
</html>