mirror of
https://github.com/Shadowss/TravianZ.git
synced 2026-08-09 04:40:59 +00:00
Add Translation to Admin Panel
Add Translation to Admin Panel
This commit is contained in:
@@ -11,9 +11,9 @@
|
||||
?>
|
||||
<div style="margin-top: 50px;">
|
||||
<center>
|
||||
<h1>404 - File not found</h1>
|
||||
<img src="../../<?php echo GP_LOCATE; ?>img/misc/404.gif" title="Not Found" alt="Not Found"><br />
|
||||
<p>We looked 404 times already but can't find anything, Not even an X marking the spot.</p>
|
||||
<p>This system is not complete yet. So the page probably does not exist.</p><br>
|
||||
<h1><?php echo ADM_404_FILE_NOT_FOUND; ?></h1>
|
||||
<img src="../../<?php echo GP_LOCATE; ?>img/misc/404.gif" title="<?php echo ADM_NOT_FOUND; ?>" alt="<?php echo ADM_NOT_FOUND; ?>"><br />
|
||||
<p><?php echo ADM_WE_LOOKED_404_TIMES_ALREADY_BUT_CAN_T_FIND_A; ?></p>
|
||||
<p><?php echo ADM_THIS_SYSTEM_IS_NOT_COMPLETE_YET_SO_THE_PAGE; ?></p><br>
|
||||
</center>
|
||||
</div>
|
||||
@@ -49,8 +49,8 @@ $user = $database->getUserArray($id,1);
|
||||
|
||||
<div class="msg-card">
|
||||
<div class="msg-head">
|
||||
<h4>New Message</h4>
|
||||
<div>to <a href="admin.php?p=player&uid=<?php echo $user['id']; ?>"><?php echo htmlspecialchars($user['username']); ?></a></div>
|
||||
<h4><?php echo ADM_NEW_MESSAGE; ?></h4>
|
||||
<div><?php echo ADM_TO; ?><a href="admin.php?p=player&uid=<?php echo $user['id']; ?>"><?php echo htmlspecialchars($user['username']); ?></a></div>
|
||||
</div>
|
||||
|
||||
<form method="post" action="../GameEngine/Admin/Mods/sendMessage.php" name="msg">
|
||||
@@ -59,12 +59,12 @@ $user = $database->getUserArray($id,1);
|
||||
<input type="hidden" name="uid" value="<?php echo $id; ?>">
|
||||
|
||||
<div class="msg-row">
|
||||
<div class="msg-label">Recipient</div>
|
||||
<div class="msg-label"><?php echo ADM_RECIPIENT; ?></div>
|
||||
<div><strong style="color:#0f172a"><?php echo htmlspecialchars($user['username']); ?></strong> (UID <?php echo $id; ?>)</div>
|
||||
</div>
|
||||
|
||||
<div class="msg-row">
|
||||
<div class="msg-label">Subject</div>
|
||||
<div class="msg-label"><?php echo ADM_SUBJECT_2; ?></div>
|
||||
<input class="msg-input" type="text" name="topic" maxlength="35" value="Message From Admin" required>
|
||||
</div>
|
||||
|
||||
@@ -74,13 +74,13 @@ $user = $database->getUserArray($id,1);
|
||||
</div>
|
||||
|
||||
<div class="msg-row" style="align-items:start">
|
||||
<div class="msg-label" style="padding-top:8px">Message</div>
|
||||
<textarea class="msg-text" name="message" required placeholder="Write your message here..."></textarea>
|
||||
<div class="msg-label" style="padding-top:8px"><?php echo ADM_MESSAGE; ?></div>
|
||||
<textarea class="msg-text" name="message" required placeholder="<?php echo ADM_WRITE_YOUR_MESSAGE_HERE; ?>"></textarea>
|
||||
</div>
|
||||
|
||||
<div class="msg-actions">
|
||||
<a href="javascript:history.go(-1)" class="btn-ghost">Cancel</a>
|
||||
<button type="submit" name="s1" class="btn-primary">Send Message</button>
|
||||
<a href="javascript:history.go(-1)" class="btn-ghost"><?php echo ADM_CANCEL; ?></a>
|
||||
<button type="submit" name="s1" class="btn-primary"><?php echo ADM_SEND_MESSAGE; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -88,7 +88,6 @@ $user = $database->getUserArray($id,1);
|
||||
</div>
|
||||
|
||||
<?php } else { ?>
|
||||
<div style="font-family:system-ui;padding:30px;text-align:center;color:#64748b">
|
||||
Player not found. <a href="javascript:history.go(-1)" style="color:#2563eb">Go Back</a>
|
||||
<div style="font-family:system-ui;padding:30px;text-align:center;color:#64748b"><?php echo ADM_PLAYER_NOT_FOUND; ?><a href="javascript:history.go(-1)" style="color:#2563eb"><?php echo ADM_GO_BACK; ?></a>
|
||||
</div>
|
||||
<?php } ?>
|
||||
@@ -62,7 +62,7 @@ if(isset($id)){
|
||||
|
||||
<div class="ab-grid">
|
||||
<div class="ab-row header">
|
||||
<div></div><div>Troop</div><div style="text-align:center">Armoury</div><div style="text-align:center">Blacksmith</div>
|
||||
<div></div><div><?php echo ADM_TROOP; ?></div><div style="text-align:center"><?php echo ADM_ARMOURY; ?></div><div style="text-align:center"><?php echo ADM_BLACKSMITH; ?></div>
|
||||
</div>
|
||||
<?php for($i=1;$i<9;$i++){ ?>
|
||||
<div class="ab-row">
|
||||
@@ -76,11 +76,9 @@ if(isset($id)){
|
||||
|
||||
<div class="ab-foot">
|
||||
<button type="button" class="btn btn-back" onclick="location.href='admin.php?p=village&did=<?=(int)($_GET['did'] ?? 0)?>'">
|
||||
<svg viewBox="0 0 24 24"><path d="M19 12H5M12 19l-7-7 7-7"/></svg>Back
|
||||
</button>
|
||||
<svg viewBox="0 0 24 24"><path d="M19 12H5M12 19l-7-7 7-7"/></svg><?php echo ADM_BACK_3; ?></button>
|
||||
<button type="submit" name="save" class="btn btn-save">
|
||||
<svg viewBox="0 0 24 24"><path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/><polyline points="17 21 17 13 7 13 7 21"/></svg>Save
|
||||
</button>
|
||||
<svg viewBox="0 0 24 24"><path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/><polyline points="17 21 17 13 7 13 7 21"/></svg><?php echo ADM_SAVE_3; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -72,7 +72,7 @@ if(isset($id)){
|
||||
<div class="troop-name"><?=$unarray[$uid]?></div>
|
||||
<div class="troop-input">
|
||||
<input name="u<?=$uid?>" id="u<?=$uid?>" value="<?=$current?>" maxlength="10" type="number" min="0">
|
||||
<div class="troop-current">Now: <b><?=number_format($current)?></b></div>
|
||||
<div class="troop-current"><?php echo ADM_NOW; ?><b><?=number_format($current)?></b></div>
|
||||
</div>
|
||||
</div>
|
||||
<?php } ?>
|
||||
@@ -80,11 +80,9 @@ if(isset($id)){
|
||||
|
||||
<div class="addtroops-foot">
|
||||
<button type="button" class="btn btn-back" onclick="location.href='admin.php?p=village&did=<?=(int)($_GET['did'] ?? 0)?>'">
|
||||
<svg viewBox="0 0 24 24"><path d="M19 12H5M12 19l-7-7 7-7"/></svg>Back
|
||||
</button>
|
||||
<svg viewBox="0 0 24 24"><path d="M19 12H5M12 19l-7-7 7-7"/></svg><?php echo ADM_BACK_3; ?></button>
|
||||
<button type="submit" name="save" class="btn btn-save">
|
||||
<svg viewBox="0 0 24 24"><path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/><polyline points="17 21 17 13 7 13 7 21"/><polyline points="7 3 7 8 15 8"/></svg>Save
|
||||
</button>
|
||||
<svg viewBox="0 0 24 24"><path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/><polyline points="17 21 17 13 7 13 7 21"/><polyline points="7 3 7 8 15 8"/></svg><?php echo ADM_SAVE_3; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -96,12 +96,12 @@ elseif(isset($_GET['g']) && $_GET['g']=='OK'){
|
||||
</style>
|
||||
|
||||
<div class="add-wrap">
|
||||
<div class="add-head"><h2>👤 Create Users</h2></div>
|
||||
<div class="add-head"><h2><?php echo ADM_CREATE_USERS; ?></h2></div>
|
||||
|
||||
<div class="add-card">
|
||||
<div class="add-top">
|
||||
<div class="warn-red">Submitting this form will create new Users and/or Villages on your server!</div>
|
||||
<div class="warn-blue">Includes resources, main building, rally point, warehouse, granary, wall, market, residence, troops (for hero level-up), and one cranny.</div>
|
||||
<div class="warn-red"><?php echo ADM_SUBMITTING_THIS_FORM_WILL_CREATE_NEW_USERS_A; ?></div>
|
||||
<div class="warn-blue"><?php echo ADM_INCLUDES_RESOURCES_MAIN_BUILDING_RALLY_POINT; ?></div>
|
||||
</div>
|
||||
|
||||
<form action="../GameEngine/Admin/Mods/addUsers.php" method="POST" class="add-form">
|
||||
@@ -112,38 +112,37 @@ elseif(isset($_GET['g']) && $_GET['g']=='OK'){
|
||||
<?php if($successMsg){?><div class="alert alert-ok">✓ <?php echo $successMsg;?></div><?php }?>
|
||||
|
||||
<div class="mode-box">
|
||||
<label><input type="radio" name="mode" value="many_accounts" <?php echo $mode=='many_accounts'?'checked':'';?>><span>Many accounts (1 village)</span></label>
|
||||
<label><input type="radio" name="mode" value="single_with_villages" <?php echo $mode=='single_with_villages'?'checked':'';?>><span>1 account (many villages)</span></label>
|
||||
<label><input type="radio" name="mode" value="many_accounts" <?php echo $mode=='many_accounts'?'checked':'';?>><span><?php echo ADM_MANY_ACCOUNTS_1_VILLAGE; ?></span></label>
|
||||
<label><input type="radio" name="mode" value="single_with_villages" <?php echo $mode=='single_with_villages'?'checked':'';?>><span><?php echo ADM_1_ACCOUNT_MANY_VILLAGES; ?></span></label>
|
||||
</div>
|
||||
|
||||
<div class="examples">
|
||||
<b>Base Name</b> 4-20 characters. Ex: Farm | 5 → Farm1..Farm5. Single ex: FarmLord | 5 villages.<br>
|
||||
<b>Warning:</b> large values may freeze the server!
|
||||
</div>
|
||||
<b><?php echo ADM_BASE_NAME; ?></b><?php echo ADM_4_20_CHARACTERS_EX_FARM_5_FARM1_FARM5_SINGLE; ?><br>
|
||||
<b><?php echo ADM_WARNING_2; ?></b><?php echo ADM_LARGE_VALUES_MAY_FREEZE_THE_SERVER; ?></div>
|
||||
|
||||
<div class="row">
|
||||
<label>Base Name</label>
|
||||
<label><?php echo ADM_BASE_NAME; ?></label>
|
||||
<input type="text" name="users_base_name" value="<?php echo htmlspecialchars($baseName);?>" maxlength="20">
|
||||
</div>
|
||||
|
||||
<div class="row" id="accRow">
|
||||
<label>How many accounts</label>
|
||||
<label><?php echo ADM_HOW_MANY_ACCOUNTS; ?></label>
|
||||
<input type="text" name="users_amount" value="<?php echo htmlspecialchars($amount);?>" maxlength="4">
|
||||
</div>
|
||||
<div class="hint">1 - 200</div>
|
||||
|
||||
<div class="row" id="vilRow">
|
||||
<label>How many villages</label>
|
||||
<label><?php echo ADM_HOW_MANY_VILLAGES; ?></label>
|
||||
<input type="text" name="villages_amount" value="<?php echo htmlspecialchars($villages);?>" maxlength="4">
|
||||
</div>
|
||||
<div class="hint">1 - 200 (single only)</div>
|
||||
<div class="hint"><?php echo ADM_1_200_SINGLE_ONLY; ?></div>
|
||||
|
||||
<div class="check">
|
||||
<label><input type="checkbox" name="users_protection" checked> Enable beginner protection</label>
|
||||
<label><input type="checkbox" name="users_protection" checked><?php echo ADM_ENABLE_BEGINNER_PROTECTION; ?></label>
|
||||
</div>
|
||||
|
||||
<div class="tribe-wrap">
|
||||
<div class="tribe-title">Tribe</div>
|
||||
<div class="tribe-title"><?php echo ADM_TRIBE; ?></div>
|
||||
<div class="tribe-grid">
|
||||
<label><input type="radio" name="tribe" value="0" checked><span class="tribe-icon">🎲</span><span class="tribe-text"><?php echo RANDOM;?></span></label>
|
||||
<label><input type="radio" name="tribe" value="1"><span class="tribe-icon">🏛</span><span class="tribe-text"><?php echo TRIBE1;?></span></label>
|
||||
@@ -156,7 +155,7 @@ elseif(isset($_GET['g']) && $_GET['g']=='OK'){
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="submit"><button type="submit">+ Create</button></div>
|
||||
<div class="submit"><button type="submit"><?php echo ADM_CREATE_2; ?></button></div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -62,12 +62,12 @@
|
||||
<input name="uid" type="hidden" value="<?php echo $user['id'];?>">
|
||||
<table class="punish-box">
|
||||
<thead>
|
||||
<tr><th>Add Village</th></tr>
|
||||
<tr><th><?php echo ADM_ADD_VILLAGE; ?></th></tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="padding-bottom:4px;border-bottom:0">
|
||||
<span class="addv-label">Coordinates (X|Y)</span>
|
||||
<span class="addv-label"><?php echo ADM_COORDINATES_X_Y; ?></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -89,7 +89,7 @@
|
||||
<tr>
|
||||
<td style="padding-top:8px">
|
||||
<div class="punish-row" style="justify-content:center">
|
||||
<button type="submit" class="btn-add" <?php if($_SESSION['access'] != ADMIN){ echo 'disabled'; } ?>>ADD VILLAGE</button>
|
||||
<button type="submit" class="btn-add" <?php if($_SESSION['access'] != ADMIN){ echo 'disabled'; } ?>><?php echo ADM_ADD_VILLAGE_2; ?></button>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -145,7 +145,7 @@ function logCategory($entry) {
|
||||
?>
|
||||
<div class="log-wrap">
|
||||
<div class="log-head">
|
||||
<h2>📋 Unified Admin Log – last 300 actions</h2>
|
||||
<h2><?php echo ADM_UNIFIED_ADMIN_LOG_LAST_300_ACTIONS; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="log-filters" id="logFilters">
|
||||
@@ -170,11 +170,11 @@ function logCategory($entry) {
|
||||
<table class="logTable" id="logTable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="50">ID</th>
|
||||
<th width="120">Admin</th>
|
||||
<th width="100">Categorie</th>
|
||||
<th>Detalii</th>
|
||||
<th width="140">Data</th>
|
||||
<th width="50"><?php echo ADM_ID; ?></th>
|
||||
<th width="120"><?php echo ADMIN_ADMIN; ?></th>
|
||||
<th width="100"><?php echo ADM_CATEGORIE; ?></th>
|
||||
<th><?php echo ADM_DETALII; ?></th>
|
||||
<th width="140"><?php echo ADM_DATA; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -202,9 +202,9 @@ foreach($paged as $e) {
|
||||
</div>
|
||||
<?php $catQS = ($catFilter !== '' && $catFilter !== 'ALL') ? '&cat='.$catFilter : ''; ?>
|
||||
<div class="log-page" style="text-align:center;margin:10px 0;font-size:11px">
|
||||
<?php if($page>1){ ?><a href="admin.php?p=admin_log&pg=<?php echo $page-1;?><?php echo $catQS;?>">« Prev</a><?php } ?>
|
||||
<?php if($page>1){ ?><a href="admin.php?p=admin_log&pg=<?php echo $page-1;?><?php echo $catQS;?>"><?php echo ADM_PREV; ?></a><?php } ?>
|
||||
<span class="cur"><?php echo $page;?> / <?php echo max(1,$totalPages);?></span>
|
||||
<?php if($page<$totalPages){ ?><a href="admin.php?p=admin_log&pg=<?php echo $page+1;?><?php echo $catQS;?>">Next »</a><?php } ?>
|
||||
<?php if($page<$totalPages){ ?><a href="admin.php?p=admin_log&pg=<?php echo $page+1;?><?php echo $catQS;?>"><?php echo ADM_NEXT; ?></a><?php } ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -134,29 +134,29 @@ if($_GET['aid']) {
|
||||
<div class="ali-head">
|
||||
<h1><span class="tag"><?php echo htmlspecialchars($alidata['tag']); ?></span> <?php echo htmlspecialchars($alidata['name']); ?></h1>
|
||||
<div class="stats">
|
||||
<div>👑 Founder: <b><a href="?p=player&uid=<?php echo $alidata['leader']; ?>"><?php echo htmlspecialchars($founder); ?></a></b></div>
|
||||
<div>👥 Members: <b><?php echo count($aliusers); ?>/<?php echo $maxMembers; ?></b></div>
|
||||
<div>🏆 Points: <b><?php echo number_format($totalpop); ?></b></div>
|
||||
<div><?php echo ADM_FOUNDER; ?><b><a href="?p=player&uid=<?php echo $alidata['leader']; ?>"><?php echo htmlspecialchars($founder); ?></a></b></div>
|
||||
<div><?php echo ADM_MEMBERS; ?><b><?php echo count($aliusers); ?>/<?php echo $maxMembers; ?></b></div>
|
||||
<div><?php echo ADM_POINTS; ?><b><?php echo number_format($totalpop); ?></b></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- ALLIANCE DETAILS -->
|
||||
<div class="card">
|
||||
<h3>📋 Alliance Details</h3>
|
||||
<h3><?php echo ADM_ALLIANCE_DETAILS; ?></h3>
|
||||
<div class="body">
|
||||
<table class="info-list">
|
||||
<tr><th>Tag</th><td><?php echo htmlspecialchars($alidata['tag']); ?></td></tr>
|
||||
<tr><th>Name</th><td><?php echo htmlspecialchars($alidata['name']); ?></td></tr>
|
||||
<tr><th>Rank</th><td><b>#<?php echo $allianceRank; ?></b></td></tr>
|
||||
<tr><th>Points</th><td><?php echo number_format($totalpop); ?></td></tr>
|
||||
<tr><th>Capacity</th><td>
|
||||
<tr><th><?php echo ADM_TAG; ?></th><td><?php echo htmlspecialchars($alidata['tag']); ?></td></tr>
|
||||
<tr><th><?php echo ADM_NAME; ?></th><td><?php echo htmlspecialchars($alidata['name']); ?></td></tr>
|
||||
<tr><th><?php echo ADM_RANK; ?></th><td><b>#<?php echo $allianceRank; ?></b></td></tr>
|
||||
<tr><th><?php echo ADM_POINTS_2; ?></th><td><?php echo number_format($totalpop); ?></td></tr>
|
||||
<tr><th><?php echo ADM_CAPACITY; ?></th><td>
|
||||
<?php $now=count($aliusers); $cls=$now>=$maxMembers?'full':'ok'; ?>
|
||||
<span class="badge-cap <?php echo $cls; ?>"><?php echo "$now/$maxMembers"; ?></span>
|
||||
</td></tr>
|
||||
</table>
|
||||
|
||||
<div style="margin-top:12px;">
|
||||
<b style="font-size:12px;">🛡 Alliance Positions</b>
|
||||
<b style="font-size:12px;"><?php echo ADM_ALLIANCE_POSITIONS; ?></b>
|
||||
<div class="positions">
|
||||
<?php
|
||||
$sql = "SELECT * FROM ".TB_PREFIX."ali_permission WHERE alliance = $aid";
|
||||
@@ -175,21 +175,21 @@ if($_GET['aid']) {
|
||||
</div>
|
||||
|
||||
<div class="btn-row">
|
||||
<a class="btn edit" href="?p=editAli&aid=<?php echo $alidata['id'];?>">✏ Edit Alliance</a>
|
||||
<a class="btn del" href="?p=delAli&aid=<?php echo $alidata['id'];?>" onclick="return confirm('Delete alliance?')">🗑 Delete</a>
|
||||
<a class="btn edit" href="?p=editAli&aid=<?php echo $alidata['id'];?>"><?php echo ADM_EDIT_ALLIANCE; ?></a>
|
||||
<a class="btn del" href="?p=delAli&aid=<?php echo $alidata['id'];?>" onclick="return confirm('Delete alliance?')"><?php echo ADM_DELETE_2; ?></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- ALLIANCE DESCRIPTION - ACUM SUB DETAILS -->
|
||||
<div class="card">
|
||||
<h3>📖 Alliance Description</h3>
|
||||
<h3><?php echo ADM_ALLIANCE_DESCRIPTION; ?></h3>
|
||||
<div class="body"><div class="desc-box" style="min-height:120px;"><?php echo nl2br(htmlspecialchars($alidata['desc'])); ?></div></div>
|
||||
</div>
|
||||
|
||||
<!-- ALLIANCE NOTICE - ACUM SUB DESCRIPTION -->
|
||||
<div class="card">
|
||||
<h3>📢 Alliance Notice</h3>
|
||||
<h3><?php echo ADM_ALLIANCE_NOTICE; ?></h3>
|
||||
<div class="body"><div class="desc-box"><?php echo nl2br(htmlspecialchars($alidata['notice'])); ?></div></div>
|
||||
</div>
|
||||
|
||||
@@ -198,7 +198,7 @@ if($_GET['aid']) {
|
||||
<h3>👥 Members (<?php echo count($aliusers); ?>)</h3>
|
||||
<div class="body" style="padding:0;">
|
||||
<table class="members-table">
|
||||
<thead><tr><th>#</th><th>Player</th><th>Population</th><th>Villages</th><th></th></tr></thead>
|
||||
<thead><tr><th>#</th><th><?php echo ADM_PLAYER_2; ?></th><th><?php echo ADM_POPULATION; ?></th><th><?php echo ADM_VILLAGES; ?></th><th></th></tr></thead>
|
||||
<tbody>
|
||||
<?php
|
||||
$rank=0;
|
||||
@@ -228,10 +228,10 @@ if($_GET['aid']) {
|
||||
|
||||
<!-- NEWS - FULL WIDTH -->
|
||||
<div class="card">
|
||||
<h3>📰 Alliance News</h3>
|
||||
<h3><?php echo ADM_ALLIANCE_NEWS; ?></h3>
|
||||
<div class="body" style="padding:0;max-height:300px;overflow:auto;">
|
||||
<table class="mini-table">
|
||||
<thead><tr><th>Event</th><th style="width:130px;">Time</th></tr></thead>
|
||||
<thead><tr><th><?php echo ADM_EVENT; ?></th><th style="width:130px;"><?php echo ADM_TIME; ?></th></tr></thead>
|
||||
<tbody>
|
||||
<?php
|
||||
$sql = "SELECT * FROM ".TB_PREFIX."ali_log WHERE aid = $aid ORDER BY date DESC LIMIT 50";
|
||||
@@ -250,10 +250,10 @@ if($_GET['aid']) {
|
||||
|
||||
<!-- DIPLOMACY - FULL WIDTH -->
|
||||
<div class="card">
|
||||
<h3>🤝 Diplomacy</h3>
|
||||
<h3><?php echo ADM_DIPLOMACY; ?></h3>
|
||||
<div class="body" style="padding:0;">
|
||||
<table class="mini-table">
|
||||
<thead><tr><th>Alliance</th><th>Type</th><th style="width:60px;">Status</th></tr></thead>
|
||||
<thead><tr><th><?php echo ADMIN_ALLIANCE; ?></th><th><?php echo ADM_TYPE; ?></th><th style="width:60px;"><?php echo ADM_STATUS; ?></th></tr></thead>
|
||||
<tbody>
|
||||
<?php
|
||||
$sql = "SELECT * FROM ".TB_PREFIX."diplomacy WHERE alli1 = $aid OR alli2 = $aid ORDER BY accepted DESC";
|
||||
|
||||
@@ -42,12 +42,12 @@ $varmedal = $database->getProfileMedalAlly($_GET['aid']);
|
||||
<table class="medal-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Category</th><th>Rank</th><th>Week</th><th>Points</th><th>Medal</th><th style="width:32px"></th>
|
||||
<th><?php echo ADM_CATEGORY; ?></th><th><?php echo ADM_RANK; ?></th><th><?php echo ADM_WEEK; ?></th><th><?php echo ADM_POINTS_2; ?></th><th><?php echo ADM_MEDAL; ?></th><th style="width:32px"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php if(sizeof($varmedal)==0){ ?>
|
||||
<tr><td colspan="6" class="medal-empty">This alliance has no medals yet</td></tr>
|
||||
<tr><td colspan="6" class="medal-empty"><?php echo ADM_THIS_ALLIANCE_HAS_NO_MEDALS_YET; ?></td></tr>
|
||||
<?php } else {
|
||||
$i=0;$averagerank=0;
|
||||
foreach($varmedal as $medal){
|
||||
@@ -66,7 +66,7 @@ $varmedal = $database->getProfileMedalAlly($_GET['aid']);
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="aid" value="<?=(int)($_GET['aid'] ?? 0)?>">
|
||||
<input type="hidden" name="admid" value="<?=$_SESSION['id']?>">
|
||||
<button type="submit" name="medalid" value="<?=$medal['id']?>" class="medal-del" title="Delete">
|
||||
<button type="submit" name="medalid" value="<?=$medal['id']?>" class="medal-del" title="<?php echo ADM_DELETE; ?>">
|
||||
<svg viewBox="0 0 24 24"><polyline points="3 6 5 6 21 6"/><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/><line x1="10" y1="11" x2="10" y2="17"/><line x1="14" y1="11" x2="14" y2="17"/></svg>
|
||||
</button>
|
||||
</form>
|
||||
@@ -76,16 +76,16 @@ $varmedal = $database->getProfileMedalAlly($_GET['aid']);
|
||||
$average = $i>0 ? round($averagerank/$i,2) : 0;
|
||||
?>
|
||||
<tr class="medal-avg">
|
||||
<td>Average Rank</td>
|
||||
<td><?php echo ADM_AVERAGE_RANK; ?></td>
|
||||
<td><?=$average?></td>
|
||||
<td></td><td></td>
|
||||
<td>Delete All</td>
|
||||
<td><?php echo ADM_DELETE_ALL; ?></td>
|
||||
<td>
|
||||
<form action="../GameEngine/Admin/Mods/delallymedalbyaid.php" method="POST" style="margin:0">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="admid" value="<?=$_SESSION['id']?>">
|
||||
<input type="hidden" name="aid" value="<?=(int)($_GET['aid'] ?? 0)?>">
|
||||
<button type="submit" class="medal-del" title="Delete All">
|
||||
<button type="submit" class="medal-del" title="<?php echo ADM_DELETE_ALL; ?>">
|
||||
<svg viewBox="0 0 24 24"><polyline points="3 6 5 6 21 6"/><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/><line x1="10" y1="11" x2="10" y2="17"/><line x1="14" y1="11" x2="14" y2="17"/></svg>
|
||||
</button>
|
||||
</form>
|
||||
|
||||
@@ -49,11 +49,11 @@ $artifactInfo = $artifact ? Artifacts::getArtifactInfo($artifact) : null;
|
||||
<tr>
|
||||
<th class="del"></th>
|
||||
<th class="icon"></th>
|
||||
<th>Name</th>
|
||||
<th>Bonus</th>
|
||||
<th>Area of effect</th>
|
||||
<th>Time of conquer</th>
|
||||
<th>Time of activation</th>
|
||||
<th><?php echo ADM_NAME; ?></th>
|
||||
<th><?php echo ADM_BONUS; ?></th>
|
||||
<th><?php echo ADM_AREA_OF_EFFECT; ?></th>
|
||||
<th><?php echo ADM_TIME_OF_CONQUER; ?></th>
|
||||
<th><?php echo ADM_TIME_OF_ACTIVATION; ?></th>
|
||||
<?php if($artifactOfTheFool) echo '<th>Next activation</th>'; ?>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -74,7 +74,7 @@ $artifactInfo = $artifact ? Artifacts::getArtifactInfo($artifact) : null;
|
||||
|
||||
<?php if($village['owner'] != 3 && !empty($artifact)): ?>
|
||||
<div class="artifact-foot">
|
||||
<a href="admin.php?action=returnArtifact&artid=<?php echo $artifact['id']; ?>">Return to Natars</a>
|
||||
<a href="admin.php?action=returnArtifact&artid=<?php echo $artifact['id']; ?>"><?php echo ADM_RETURN_TO_NATARS; ?></a>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
+15
-15
@@ -126,39 +126,39 @@ $historyCount = $banHistory ? mysqli_num_rows($banHistory) : 0;
|
||||
<div class="ban-wrap">
|
||||
<div class="ban-head">
|
||||
<svg viewBox="0 0 24 24" fill="none"><circle cx="12" cy="12" r="10" fill="#c0392b"/><path d="M7 7l10 10M17 7L7 17" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg>
|
||||
<h2>Ban Management</h2>
|
||||
<h2><?php echo ADM_BAN_MANAGEMENT; ?></h2>
|
||||
</div>
|
||||
|
||||
<?php if($error){?><div class="alert error"><?php echo $error;?></div><?php }?>
|
||||
<?php if($success){?><div class="alert success"><?php echo $success;?></div><?php }?>
|
||||
|
||||
<div class="ban-stats">
|
||||
<div class="stat"><div class="ico"><svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor"><path d="M12 12a5 5 0 100-10 5 5 0 000 10zM4 20c0-3.3 2.7-6 6-6h4c3.3 0 6 2.7 6 6v1H4v-1z"/></svg></div><div><div class="lbl">Active User Bans</div><div class="val"><?php echo count($bannedUsers);?></div></div></div>
|
||||
<div class="stat"><div class="ico"><svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor"><circle cx="12" cy="12" r="10"/></svg></div><div><div class="lbl">Active IP Bans</div><div class="val"><?php echo count($bannedIps);?></div></div></div>
|
||||
<div class="stat"><div class="ico"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></svg></div><div><div class="lbl">History (last 50)</div><div class="val"><?php echo $historyCount;?></div></div></div>
|
||||
<div class="stat"><div class="ico"><svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor"><path d="M12 12a5 5 0 100-10 5 5 0 000 10zM4 20c0-3.3 2.7-6 6-6h4c3.3 0 6 2.7 6 6v1H4v-1z"/></svg></div><div><div class="lbl"><?php echo ADM_ACTIVE_USER_BANS; ?></div><div class="val"><?php echo count($bannedUsers);?></div></div></div>
|
||||
<div class="stat"><div class="ico"><svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor"><circle cx="12" cy="12" r="10"/></svg></div><div><div class="lbl"><?php echo ADM_ACTIVE_IP_BANS; ?></div><div class="val"><?php echo count($bannedIps);?></div></div></div>
|
||||
<div class="stat"><div class="ico"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></svg></div><div><div class="lbl"><?php echo ADM_HISTORY_50; ?></div><div class="val"><?php echo $historyCount;?></div></div></div>
|
||||
</div>
|
||||
|
||||
<div class="ban-stack">
|
||||
<!-- 1. Add New Ban -->
|
||||
<div class="ban-card">
|
||||
<h3><svg width="16" height="16" viewBox="0 0 24 24"><path d="M12 2L2 7v10l10 5 10-5V7L12 2z" fill="#c0392b"/></svg> Add New Ban</h3>
|
||||
<h3><svg width="16" height="16" viewBox="0 0 24 24"><path d="M12 2L2 7v10l10 5 10-5V7L12 2z" fill="#c0392b"/></svg><?php echo ADM_ADD_NEW_BAN; ?></h3>
|
||||
<form method="post" class="ban-form">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="action" value="addBan">
|
||||
<div class="row">
|
||||
<input type="number" name="uid" placeholder="User ID" required>
|
||||
<input type="number" name="uid" placeholder="<?php echo ADM_USER_ID; ?>" required>
|
||||
<select name="reason"><?php foreach(['Pushing','Cheat','Hack','Bug','Bad Name','Multi Account','Swearing'] as $r){ echo "<option>$r</option>"; }?></select>
|
||||
</div>
|
||||
<div class="row two">
|
||||
<select name="time"><?php foreach([1,2,5,10,12] as $h) echo "<option value='".($h*3600)."'>$h hour/s</option>"; foreach([1,2,5,10,30,50,90] as $d) echo "<option value='".($d*86400)."'>$d day/s</option>"; ?><option value="0">Forever</option></select>
|
||||
<button type="submit">Ban User</button>
|
||||
<select name="time"><?php foreach([1,2,5,10,12] as $h) echo "<option value='".($h*3600)."'>$h hour/s</option>"; foreach([1,2,5,10,30,50,90] as $d) echo "<option value='".($d*86400)."'>$d day/s</option>"; ?><option value="0"><?php echo ADM_FOREVER; ?></option></select>
|
||||
<button type="submit"><?php echo ADM_BAN_USER; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<!-- 2. Active Bans -->
|
||||
<div class="ban-card">
|
||||
<h3><svg width="16" height="16" viewBox="0 0 24 24"><circle cx="12" cy="12" r="9" fill="#e74c3c"/></svg> Active Bans <span class="badge-count"><?php echo count($bannedUsers);?></span></h3>
|
||||
<h3><svg width="16" height="16" viewBox="0 0 24 24"><circle cx="12" cy="12" r="9" fill="#e74c3c"/></svg><?php echo ADM_ACTIVE_BANS; ?><span class="badge-count"><?php echo count($bannedUsers);?></span></h3>
|
||||
<div class="ban-list">
|
||||
<?php if($bannedUsers){ foreach($bannedUsers as $b){ $name = $database->getUserField($b['uid'],'username',0) ?: $b['name']; $end = $b['end'] ? date("d.m H:i",$b['end']) : '∞'; ?>
|
||||
<div class="ban-item">
|
||||
@@ -171,24 +171,24 @@ $historyCount = $banHistory ? mysqli_num_rows($banHistory) : 0;
|
||||
|
||||
<!-- 3. Ban IP Address -->
|
||||
<div class="ban-card">
|
||||
<h3><svg width="16" height="16" viewBox="0 0 24 24"><path d="M12 2L2 7v10l10 5 10-5V7L12 2z" fill="#c0392b"/></svg> Ban IP Address</h3>
|
||||
<h3><svg width="16" height="16" viewBox="0 0 24 24"><path d="M12 2L2 7v10l10 5 10-5V7L12 2z" fill="#c0392b"/></svg><?php echo ADM_BAN_IP_ADDRESS; ?></h3>
|
||||
<form method="post" class="ban-form">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="action" value="addIpBan">
|
||||
<div class="row">
|
||||
<input type="text" name="ip" placeholder="IPv4 or IPv6" required>
|
||||
<input type="text" name="ip" placeholder="<?php echo ADM_IPV4_OR_IPV6; ?>" required>
|
||||
<select name="reason"><?php foreach(['Pushing','Cheat','Hack','Bug','Bad Name','Multi Account','Swearing'] as $r){ echo "<option>$r</option>"; }?></select>
|
||||
</div>
|
||||
<div class="row two">
|
||||
<select name="time"><?php foreach([1,2,5,10,12] as $h) echo "<option value='".($h*3600)."'>$h hour/s</option>"; foreach([1,2,5,10,30,50,90] as $d) echo "<option value='".($d*86400)."'>$d day/s</option>"; ?><option value="0">Forever</option></select>
|
||||
<button type="submit">Ban IP</button>
|
||||
<select name="time"><?php foreach([1,2,5,10,12] as $h) echo "<option value='".($h*3600)."'>$h hour/s</option>"; foreach([1,2,5,10,30,50,90] as $d) echo "<option value='".($d*86400)."'>$d day/s</option>"; ?><option value="0"><?php echo ADM_FOREVER; ?></option></select>
|
||||
<button type="submit"><?php echo ADM_BAN_IP; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<!-- 4. Active IP Bans -->
|
||||
<div class="ban-card">
|
||||
<h3><svg width="16" height="16" viewBox="0 0 24 24"><circle cx="12" cy="12" r="9" fill="#e74c3c"/></svg> Active IP Bans <span class="badge-count"><?php echo count($bannedIps);?></span></h3>
|
||||
<h3><svg width="16" height="16" viewBox="0 0 24 24"><circle cx="12" cy="12" r="9" fill="#e74c3c"/></svg><?php echo ADM_ACTIVE_IP_BANS; ?><span class="badge-count"><?php echo count($bannedIps);?></span></h3>
|
||||
<div class="ban-list">
|
||||
<?php if($bannedIps){ foreach($bannedIps as $b){ $end = $b['end'] ? date("d.m H:i",$b['end']) : '∞'; ?>
|
||||
<div class="ban-item">
|
||||
@@ -201,7 +201,7 @@ $historyCount = $banHistory ? mysqli_num_rows($banHistory) : 0;
|
||||
|
||||
<!-- 5. Ban History -->
|
||||
<div class="ban-card">
|
||||
<h3><svg width="16" height="16" viewBox="0 0 24 24"><path d="M12 5v7l4 2" stroke="#555" stroke-width="2" fill="none" stroke-linecap="round"/><circle cx="12" cy="12" r="9" stroke="#555" stroke-width="2" fill="none"/></svg> Ban History</h3>
|
||||
<h3><svg width="16" height="16" viewBox="0 0 24 24"><path d="M12 5v7l4 2" stroke="#555" stroke-width="2" fill="none" stroke-linecap="round"/><circle cx="12" cy="12" r="9" stroke="#555" stroke-width="2" fill="none"/></svg><?php echo ADM_BAN_HISTORY; ?></h3>
|
||||
<div class="ban-list" style="max-height:300px">
|
||||
<?php if($banHistory && $historyCount>0){ while($h=mysqli_fetch_assoc($banHistory)){ $end = $h['end'] ? date("d.m H:i",$h['end']) : '∞'; ?>
|
||||
<div class="ban-item" style="opacity:.8">
|
||||
|
||||
+10
-15
@@ -51,25 +51,20 @@ You have been banned due to a violation of the rules.
|
||||
Your banning reason is <?php echo htmlspecialchars($reason, ENT_QUOTES); ?>.
|
||||
<br>
|
||||
|
||||
<br><br>
|
||||
To ensure that you won't get banned again in the future, you should read the rules carefully:
|
||||
<br><br>
|
||||
<br><br><?php echo ADM_TO_ENSURE_THAT_YOU_WON_T_GET_BANNED_AGAIN_IN; ?><br><br>
|
||||
|
||||
<center>
|
||||
<a class="rules" href="rules.php">» Game rules</a>
|
||||
<a class="rules" href="rules.php"><?php echo ADM_GAME_RULES; ?></a>
|
||||
</center>
|
||||
|
||||
<br><br><br>
|
||||
|
||||
To continue playing contact the Multihunter and put things straight with him/her
|
||||
<br><br>
|
||||
<br><br><br><?php echo ADM_TO_CONTINUE_PLAYING_CONTACT_THE_MULTIHUNTER; ?><br><br>
|
||||
|
||||
<center>
|
||||
<a class="rules" href="nachrichten.php?t=1&id=5">» Write Message</a>
|
||||
<a class="rules" href="nachrichten.php?t=1&id=5"><?php echo ADM_WRITE_MESSAGE; ?></a>
|
||||
</center> </br>
|
||||
</br> Heed the following advice when writing your message: </br></br>
|
||||
</br> ● There is always a reason for a ban. <u>Try to think about possible reasons for this ban</u> and put things straight with the Multihunter. </br>
|
||||
</br> ● Multihunters can review enormous amounts of information about accounts. <u>Stick to the truth</u> and do not make excuses to justify your violation of the rules. </br>
|
||||
</br> ● Be cooperative and insightful, this might reduce the punishment. </br>
|
||||
</br> ● If the Multihunter does not answer immediately, then he/she is probably not online. The issue will not be resolved any faster by sending multiple messages, especially if he/she did not even read the first one yet. </br>
|
||||
</br> ● If you have really been banned unjustly, try to stay <u>calm and polite</u> while talking to the Multihunter and telling him/her about your point of view. </p>
|
||||
</br><?php echo ADM_HEED_THE_FOLLOWING_ADVICE_WHEN_WRITING_YOUR; ?></br></br>
|
||||
</br><?php echo ADM_THERE_IS_ALWAYS_A_REASON_FOR_A_BAN; ?><u><?php echo ADM_TRY_TO_THINK_ABOUT_POSSIBLE_REASONS_FOR_THIS; ?></u><?php echo ADM_AND_PUT_THINGS_STRAIGHT_WITH_THE_MULTIHUNTER; ?></br>
|
||||
</br><?php echo ADM_MULTIHUNTERS_CAN_REVIEW_ENORMOUS_AMOUNTS_OF; ?><u><?php echo ADM_STICK_TO_THE_TRUTH; ?></u><?php echo ADM_AND_DO_NOT_MAKE_EXCUSES_TO_JUSTIFY_YOUR_VIOL; ?></br>
|
||||
</br><?php echo ADM_BE_COOPERATIVE_AND_INSIGHTFUL_THIS_MIGHT_RED; ?></br>
|
||||
</br><?php echo ADM_IF_THE_MULTIHUNTER_DOES_NOT_ANSWER_IMMEDIATE; ?></br>
|
||||
</br><?php echo ADM_IF_YOU_HAVE_REALLY_BEEN_BANNED_UNJUSTLY_TRY; ?><u><?php echo ADM_CALM_AND_POLITE; ?></u><?php echo ADM_WHILE_TALKING_TO_THE_MULTIHUNTER_AND_TELLING; ?></p>
|
||||
@@ -62,58 +62,50 @@ $typeLabel = [
|
||||
</style>
|
||||
|
||||
<div class="rb-wrap">
|
||||
<h2>Registration <span>Blocklist</span></h2>
|
||||
<p class="rb-intro">
|
||||
Block new registrations by a specific <b>username</b>, a specific <b>e-mail
|
||||
address</b>, or a whole <b>e-mail domain</b> (e.g. an obscene username, or the
|
||||
entire <span class="rb-val">yahoo.com</span> domain). Matching is exact and
|
||||
case-insensitive. Existing accounts are not affected — only new sign-ups.
|
||||
</p>
|
||||
<h2><?php echo ADM_REGISTRATION; ?><span><?php echo ADM_BLOCKLIST; ?></span></h2>
|
||||
<p class="rb-intro"><?php echo ADM_BLOCK_NEW_REGISTRATIONS_BY_A_SPECIFIC; ?><b><?php echo ADM_USERNAME_3; ?></b><?php echo ADM_A_SPECIFIC; ?><b><?php echo ADM_E_MAIL_ADDRESS_2; ?></b><?php echo ADM_OR_A_WHOLE; ?><b><?php echo ADM_E_MAIL_DOMAIN; ?></b><?php echo ADM_E_G_AN_OBSCENE_USERNAME_OR_THE_ENTIRE; ?><span class="rb-val">yahoo.com</span><?php echo ADM_DOMAIN_MATCHING_IS_EXACT_AND_CASE_INSENSITIV; ?></p>
|
||||
|
||||
<?php if ($msg !== ''): ?>
|
||||
<div class="rb-msg"><?php echo e($msg); ?></div>
|
||||
<?php endif; ?>
|
||||
|
||||
<div class="rb-card">
|
||||
<h3>Add a block</h3>
|
||||
<h3><?php echo ADM_ADD_A_BLOCK; ?></h3>
|
||||
<form method="post" action="../GameEngine/Admin/Mods/blockReg.php" class="rb-add">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="do" value="add">
|
||||
<div>
|
||||
<label>Type</label>
|
||||
<label><?php echo ADM_TYPE; ?></label>
|
||||
<select name="type">
|
||||
<option value="<?php echo RegBlock::T_USERNAME; ?>">Username</option>
|
||||
<option value="<?php echo RegBlock::T_EMAIL; ?>">E-mail address</option>
|
||||
<option value="<?php echo RegBlock::T_DOMAIN; ?>">E-mail domain</option>
|
||||
<option value="<?php echo RegBlock::T_USERNAME; ?>"><?php echo ADM_USERNAME; ?></option>
|
||||
<option value="<?php echo RegBlock::T_EMAIL; ?>"><?php echo ADM_E_MAIL_ADDRESS; ?></option>
|
||||
<option value="<?php echo RegBlock::T_DOMAIN; ?>"><?php echo ADM_E_MAIL_DOMAIN_2; ?></option>
|
||||
</select>
|
||||
</div>
|
||||
<div>
|
||||
<label>Value</label>
|
||||
<label><?php echo ADM_VALUE; ?></label>
|
||||
<input class="val" type="text" name="value" maxlength="255" placeholder="e.g. BadName / spam@x.com / yahoo.com" required>
|
||||
</div>
|
||||
<div>
|
||||
<label>Note (optional)</label>
|
||||
<input class="note" type="text" name="note" maxlength="255" placeholder="reason">
|
||||
<label><?php echo ADM_NOTE_OPTIONAL; ?></label>
|
||||
<input class="note" type="text" name="note" maxlength="255" placeholder="<?php echo ADM_REASON_2; ?>">
|
||||
</div>
|
||||
<button type="submit">Add block</button>
|
||||
<button type="submit"><?php echo ADM_ADD_BLOCK; ?></button>
|
||||
</form>
|
||||
<div class="rb-hint">
|
||||
Domain: enter just the domain (<span class="rb-val">yahoo.com</span>), with or without the leading “@”.
|
||||
E-mail: the full address. Username: the exact name.
|
||||
</div>
|
||||
<div class="rb-hint"><?php echo ADM_DOMAIN_ENTER_JUST_THE_DOMAIN; ?><span class="rb-val">yahoo.com</span><?php echo ADM_WITH_OR_WITHOUT_THE_LEADING_E_MAIL_THE_FULL; ?></div>
|
||||
</div>
|
||||
|
||||
<div class="rb-card" style="padding:0;overflow:hidden;">
|
||||
<?php if (empty($blocks)): ?>
|
||||
<div class="rb-empty">No registration blocks yet.</div>
|
||||
<div class="rb-empty"><?php echo ADM_NO_REGISTRATION_BLOCKS_YET; ?></div>
|
||||
<?php else: ?>
|
||||
<table class="rb-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width:130px;">Type</th>
|
||||
<th>Value</th>
|
||||
<th>Note</th>
|
||||
<th style="width:150px;">Added</th>
|
||||
<th style="width:130px;"><?php echo ADM_TYPE; ?></th>
|
||||
<th><?php echo ADM_VALUE; ?></th>
|
||||
<th><?php echo ADM_NOTE; ?></th>
|
||||
<th style="width:150px;"><?php echo ADM_ADDED; ?></th>
|
||||
<th style="width:90px;"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -132,7 +124,7 @@ $typeLabel = [
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="do" value="remove">
|
||||
<input type="hidden" name="id" value="<?php echo (int)$b['id']; ?>">
|
||||
<button type="submit" class="rb-del">Remove</button>
|
||||
<button type="submit" class="rb-del"><?php echo ADM_REMOVE; ?></button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -33,12 +33,11 @@
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="admid" value="<?=$_SESSION['id']?>">
|
||||
<div class="clean-card">
|
||||
<div class="clean-head">Clear – Banlist - Data</div>
|
||||
<div class="clean-head"><?php echo ADM_CLEAR_BANLIST_DATA; ?></div>
|
||||
<div class="clean-body">
|
||||
<div class="clean-desc">Clean Banlist Data <strong>(TRUNCATE)</strong></div>
|
||||
<div class="clean-desc"><?php echo ADMIN_CLEAN_BANLIST_DATA; ?><strong><?php echo ADM_TRUNCATE; ?></strong></div>
|
||||
<button type="submit" class="clean-btn">
|
||||
<svg viewBox="0 0 24 24"><polyline points="3 6 5 6 21 6"/><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/></svg>Clean
|
||||
</button>
|
||||
<svg viewBox="0 0 24 24"><polyline points="3 6 5 6 21 6"/><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/></svg><?php echo ADM_CLEAN; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
+51
-55
@@ -92,22 +92,6 @@ $editIcon = '<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke=
|
||||
<tr><td><?php echo CONF_SERV_PEACESYST ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_PEACESYST_TOOLTIP ?></span></em></td><td><?php echo (["None", "Normal", "Christmas", "New Year", "Easter"])[PEACE]; ?></td></tr>
|
||||
<tr><td><?php echo CONF_SERV_GRAPHICPACK ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_GRAPHICPACK_TOOLTIP ?></span></em></td><td><?php echo GP_ENABLE ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo CONF_SERV_ERRORREPORT ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_ERRORREPORT_TOOLTIP ?></span></em></td><td><b><?php echo (ERROR_REPORT=="error_reporting (0);")? "No": "Yes";?></b></td></tr>
|
||||
<tr>
|
||||
<td>Hero base regeneration <em class="tooltip">?<span class="classic">Hit points the hero recovers per day, independent of the regeneration attribute and of equipped items. 0 disables it.</span></em></td>
|
||||
<td><b><?php echo defined('HERO_BASE_REGEN') ? (int) HERO_BASE_REGEN : 10; ?></b> HP / day</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Hero exchange rates <em class="tooltip">?<span class="classic">Rates of the exchange office in the auction house. The difference between the two directions is the house margin, so trading back and forth loses value instead of creating it.</span></em></td>
|
||||
<td>1 gold → <b><?php echo defined('HERO_SILVER_PER_GOLD') ? (int) HERO_SILVER_PER_GOLD : 10; ?></b> silver
|
||||
|
|
||||
<b><?php echo defined('HERO_SILVER_TO_GOLD') ? (int) HERO_SILVER_TO_GOLD : 25; ?></b> silver → 1 gold</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Hero resource production <em class="tooltip">?<span class="classic">Hourly resources produced by each point the hero invested in the Resources attribute, in the village where the hero is. Players choose freely between spreading it over all four resources or concentrating it on one.</span></em></td>
|
||||
<td><b><?php echo defined('HERO_RES_PER_POINT_ALL') ? (int) HERO_RES_PER_POINT_ALL : 3; ?></b> of each
|
||||
|
|
||||
<b><?php echo defined('HERO_RES_PER_POINT_ONE') ? (int) HERO_RES_PER_POINT_ONE : 10; ?></b> of one type</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
@@ -144,19 +128,19 @@ $cronKeyMasked = ($cronKey === '')
|
||||
: (strlen($cronKey) > 12 ? substr($cronKey, 0, 6) . str_repeat('•', 8) . substr($cronKey, -4) : str_repeat('•', 8));
|
||||
?>
|
||||
<div class="config-card">
|
||||
<div class="config-head"><span>Cron & Automation</span><a href="admin.php?p=editCronSet" title="Edit Cron & Automation" class="edit-btn"><?php echo $editIcon; ?></a></div>
|
||||
<div class="config-head"><span><?php echo ADM_CRON_AUTOMATION; ?></span><a href="admin.php?p=editCronSet" title="<?php echo ADM_EDIT_CRON_AUTOMATION; ?>" class="edit-btn"><?php echo $editIcon; ?></a></div>
|
||||
<table class="config-table">
|
||||
<tr><td class="b"><?php echo SERV_VARIABLE ?></td><td class="b"><?php echo SERV_VALUE ?></td></tr>
|
||||
|
||||
<tr>
|
||||
<td>Automation source <em class="tooltip">?<span class="classic">Where the game tick (battles, movements, training, construction) is processed from. When the cron job is running, players' page loads no longer carry the processing.</span></em></td>
|
||||
<td><?php echo ADM_AUTOMATION_SOURCE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_WHERE_THE_GAME_TICK_BATTLES_MOVEMENTS_TRAINI; ?></span></em></td>
|
||||
<td><?php echo $cronActive
|
||||
? "<span class='badge green'>Cron job</span>"
|
||||
: "<span class='badge red'>Page loads (fallback)</span>"; ?></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Last cron tick <em class="tooltip">?<span class="classic">Written by cron.php on every tick into GameEngine/Prevention/cron_active.txt. Under 90 seconds means the cron is alive.</span></em></td>
|
||||
<td><?php echo ADM_LAST_CRON_TICK; ?><em class="tooltip">?<span class="classic"><?php echo ADM_WRITTEN_BY_CRON_PHP_ON_EVERY_TICK_INTO_GAMEE; ?></span></em></td>
|
||||
<td><?php
|
||||
if ($cronLastRun > 0) {
|
||||
echo date('d.m.Y H:i:s', $cronLastRun) . ' <span style="color:#777">(' . $cronAge . 's ago)</span>';
|
||||
@@ -167,38 +151,38 @@ $cronKeyMasked = ($cronKey === '')
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Invocation length <em class="tooltip">?<span class="classic">CRON_LOOP_SECONDS - how long one cron.php invocation keeps running. Hosts that only allow a cron every 5 minutes still get a tick every minute this way. 0 = a single tick per invocation.</span></em></td>
|
||||
<td><?php echo ADM_INVOCATION_LENGTH; ?><em class="tooltip">?<span class="classic"><?php echo ADM_CRON_LOOP_SECONDS_HOW_LONG_ONE_CRON_PHP_INVO; ?></span></em></td>
|
||||
<td><?php echo $cronLoop > 0
|
||||
? $cronLoop . ' s <span style="color:#777">(' . (int) floor($cronLoop / max($cronTick, 1)) . ' ticks per invocation)</span>'
|
||||
: "<span class='badge blue'>Single tick</span>"; ?></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Tick interval <em class="tooltip">?<span class="classic">CRON_TICK_SECONDS - how often Automation runs inside one invocation. Automation itself expects to run about every 60 seconds.</span></em></td>
|
||||
<td><?php echo ADM_TICK_INTERVAL; ?><em class="tooltip">?<span class="classic"><?php echo ADM_CRON_TICK_SECONDS_HOW_OFTEN_AUTOMATION_RUNS; ?></span></em></td>
|
||||
<td><?php echo $cronTick; ?> s</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>HTTP trigger key <em class="tooltip">?<span class="classic">CRON_KEY - only needed to call cron.php over HTTP (external cron service). Running it from the server's own cron job does not use this key. Generated automatically at install.</span></em></td>
|
||||
<td><?php echo ADM_HTTP_TRIGGER_KEY; ?><em class="tooltip">?<span class="classic"><?php echo ADM_CRON_KEY_ONLY_NEEDED_TO_CALL_CRON_PHP_OVER_H; ?></span></em></td>
|
||||
<td><?php if ($cronKey === '') { ?>
|
||||
<span class='badge red'>Not set</span>
|
||||
<span class='badge red'><?php echo ADM_NOT_SET; ?></span>
|
||||
<?php } else { ?>
|
||||
<span id="cronKeyMask"><?php echo $cronKeyMasked; ?></span>
|
||||
<span id="cronKeyFull" style="display:none;word-break:break-all"><?php echo htmlspecialchars($cronKey, ENT_QUOTES, 'UTF-8'); ?></span>
|
||||
<a href="#" style="margin-left:6px" onclick="var m=document.getElementById('cronKeyMask'),f=document.getElementById('cronKeyFull'),u=document.getElementById('cronUrlFull');var hidden=(f.style.display==='none');m.style.display=hidden?'none':'';f.style.display=hidden?'':'none';if(u){u.style.display=hidden?'':'none';}this.textContent=hidden?'hide':'show';return false;">show</a>
|
||||
<a href="#" style="margin-left:6px" onclick="var m=document.getElementById('cronKeyMask'),f=document.getElementById('cronKeyFull'),u=document.getElementById('cronUrlFull');var hidden=(f.style.display==='none');m.style.display=hidden?'none':'';f.style.display=hidden?'':'none';if(u){u.style.display=hidden?'':'none';}this.textContent=hidden?'hide':'show';return false;"><?php echo ADM_SHOW; ?></a>
|
||||
<?php } ?></td>
|
||||
</tr>
|
||||
|
||||
<?php if ($cronUrl !== '') { ?>
|
||||
<tr>
|
||||
<td>HTTP trigger URL <em class="tooltip">?<span class="classic">Optional. Use this with an external cron service if the host cannot run a local cron job. One HTTP call = one tick.</span></em></td>
|
||||
<td><span style="color:#777">hidden – use "show" above</span>
|
||||
<td><?php echo ADM_HTTP_TRIGGER_URL; ?><em class="tooltip">?<span class="classic"><?php echo ADM_OPTIONAL_USE_THIS_WITH_AN_EXTERNAL_CRON_SERV; ?></span></em></td>
|
||||
<td><span style="color:#777"><?php echo ADM_HIDDEN_USE_SHOW_ABOVE; ?></span>
|
||||
<span id="cronUrlFull" style="display:none;word-break:break-all"><?php echo htmlspecialchars($cronUrl, ENT_QUOTES, 'UTF-8'); ?></span></td>
|
||||
</tr>
|
||||
<?php } ?>
|
||||
|
||||
<tr>
|
||||
<td>Database cleanup <em class="tooltip">?<span class="classic">Automation trims tables that would otherwise grow forever. Archived reports are never deleted. 0 disables a rule.</span></em></td>
|
||||
<td><?php echo ADM_DATABASE_CLEANUP; ?><em class="tooltip">?<span class="classic"><?php echo ADM_AUTOMATION_TRIMS_TABLES_THAT_WOULD_OTHERWISE; ?></span></em></td>
|
||||
<td><?php
|
||||
$parts = array();
|
||||
$parts[] = 'reports: ' . ($cleanReports > 0 ? $cleanReports . 'd' : 'off');
|
||||
@@ -209,7 +193,7 @@ $cronKeyMasked = ($cronKey === '')
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Last cleanup run <em class="tooltip">?<span class="classic">Cleanup runs once per hour from Automation and deletes in batches, so a first run on an old server catches up over several passes.</span></em></td>
|
||||
<td><?php echo ADM_LAST_CLEANUP_RUN; ?><em class="tooltip">?<span class="classic"><?php echo ADM_CLEANUP_RUNS_ONCE_PER_HOUR_FROM_AUTOMATION_A; ?></span></em></td>
|
||||
<td><?php
|
||||
if (is_array($cleanupInfo) && !empty($cleanupInfo['time'])) {
|
||||
$r = isset($cleanupInfo['removed']) ? $cleanupInfo['removed'] : array();
|
||||
@@ -225,7 +209,7 @@ $cronKeyMasked = ($cronKey === '')
|
||||
|
||||
<?php if ($cronCmd !== '') { ?>
|
||||
<tr>
|
||||
<td>Cron job command <em class="tooltip">?<span class="classic">Add this in cPanel → Cron Jobs. The path is detected from this installation.</span></em></td>
|
||||
<td><?php echo ADM_CRON_JOB_COMMAND; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ADD_THIS_IN_CPANEL_CRON_JOBS_THE_PATH_IS_DET; ?></span></em></td>
|
||||
<td style="word-break:break-all"><code><?php echo htmlspecialchars($cronCmd, ENT_QUOTES, 'UTF-8'); ?></code></td>
|
||||
</tr>
|
||||
<?php } ?>
|
||||
@@ -234,34 +218,46 @@ $cronKeyMasked = ($cronKey === '')
|
||||
|
||||
<!-- NEW FUNCTIONS -->
|
||||
<div class="config-card">
|
||||
<div class="config-head"><span>New Mechanics and Functions</span><a href="admin.php?p=editNewFunctions" title="Edit New Mechanics and Functions" class="edit-btn"><?php echo $editIcon; ?></a></div>
|
||||
<div class="config-head"><span><?php echo ADM_NEW_MECHANICS_AND_FUNCTIONS; ?></span><a href="admin.php?p=editNewFunctions" title="<?php echo ADM_EDIT_NEW_MECHANICS_AND_FUNCTIONS; ?>" class="edit-btn"><?php echo $editIcon; ?></a></div>
|
||||
<table class="config-table">
|
||||
<tr>
|
||||
<td><?php echo ADM_HERO_BASE_REGENERATION; ?><em class="tooltip">?<span class="classic"><?php echo ADM_HIT_POINTS_THE_HERO_RECOVERS_PER_DAY_INDEPEN; ?></span></em></td>
|
||||
<td><b><?php echo defined('HERO_BASE_REGEN') ? (int) HERO_BASE_REGEN : 10; ?></b><?php echo ADM_HP_DAY; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?php echo ADM_HERO_EXCHANGE_RATES; ?><em class="tooltip">?<span class="classic"><?php echo ADM_RATES_OF_THE_EXCHANGE_OFFICE_IN_THE_AUCTION; ?></span></em></td>
|
||||
<td><?php echo ADM_1_GOLD; ?><b><?php echo defined('HERO_SILVER_PER_GOLD') ? (int) HERO_SILVER_PER_GOLD : 10; ?></b><?php echo ADM_SILVER_2; ?><b><?php echo defined('HERO_SILVER_TO_GOLD') ? (int) HERO_SILVER_TO_GOLD : 25; ?></b><?php echo ADM_SILVER_1_GOLD; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?php echo ADM_HERO_RESOURCE_PRODUCTION; ?><em class="tooltip">?<span class="classic"><?php echo ADM_HOURLY_RESOURCES_PRODUCED_BY_EACH_POINT_THE; ?></span></em></td>
|
||||
<td><b><?php echo defined('HERO_RES_PER_POINT_ALL') ? (int) HERO_RES_PER_POINT_ALL : 3; ?></b><?php echo ADM_OF_EACH; ?><b><?php echo defined('HERO_RES_PER_POINT_ONE') ? (int) HERO_RES_PER_POINT_ONE : 10; ?></b><?php echo ADM_OF_ONE_TYPE; ?></td>
|
||||
</tr>
|
||||
<tr><td class="b"><?php echo SERV_VARIABLE ?></td><td class="b"><?php echo SERV_VALUE ?></td></tr>
|
||||
<tr><td>Display oasis in profile <em class="tooltip">?<span class="classic">Enable (Disable) the display of oases of each village in the player profile</span></em></td><td><?php echo NEW_FUNCTIONS_OASIS ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Alliance invitation message <em class="tooltip">?<span class="classic">Enable (Disable) sending an in-game message to the player, if he was invited to the alliance</span></em></td><td><?php echo NEW_FUNCTIONS_ALLIANCE_INVITATION ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>New Alliance & Embassy Mechanics <em class="tooltip">?<span class="classic">https://github.com/Shadowss/TravianZ/wiki/New-Alliance-&-Embassy-Mechanics</span></em></td><td><?php echo NEW_FUNCTIONS_EMBASSY_MECHANICS ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>New forum post message <em class="tooltip">?<span class="classic">Enable (Disable) forum subscription messages</span></em></td><td><?php echo NEW_FUNCTIONS_FORUM_POST_MESSAGE ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Tribes images in profile <em class="tooltip">?<span class="classic">Enable (Disable) displaying images of tribes</span></em></td><td><?php echo NEW_FUNCTIONS_TRIBE_IMAGES ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>New Tribe: Huns <em class="tooltip">?<span class="classic">Enable (Disable) the Huns tribe</span></em></td><td><?php echo (defined('NEW_FUNCTION_TRIBE_HUNS') && NEW_FUNCTION_TRIBE_HUNS) ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>New Tribe: Egyptians <em class="tooltip">?<span class="classic">Enable (Disable) the Egyptians tribe</span></em></td><td><?php echo (defined('NEW_FUNCTION_TRIBE_EGIPTEANS') && NEW_FUNCTION_TRIBE_EGIPTEANS) ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>New Tribe: Spartans <em class="tooltip">?<span class="classic">Enable (Disable) the Spartans tribe</span></em></td><td><?php echo (defined('NEW_FUNCTION_TRIBE_SPARTANS') && NEW_FUNCTION_TRIBE_SPARTANS) ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>New Tribe: Vikings <em class="tooltip">?<span class="classic">Enable (Disable) the Vikings tribe</span></em></td><td><?php echo (defined('NEW_FUNCTION_TRIBE_VIKINGS') && NEW_FUNCTION_TRIBE_VIKINGS) ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>MHs images in profile <em class="tooltip">?<span class="classic">Enable (Disable) displaying images of Multihunters</span></em></td><td><?php echo NEW_FUNCTIONS_MHS_IMAGES ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Display artifact in profile <em class="tooltip">?<span class="classic">Enable (Disable) the display of the artifact</span></em></td><td><?php echo NEW_FUNCTIONS_DISPLAY_ARTIFACT ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Display WoW in profile <em class="tooltip">?<span class="classic">Enable (Disable) the display of the wonder</span></em></td><td><?php echo NEW_FUNCTIONS_DISPLAY_WONDER ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Vacation Mode <em class="tooltip">?<span class="classic">Enable (Disable) vacation mode</span></em></td><td><?php echo NEW_FUNCTIONS_VACATION ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Catapult targets <em class="tooltip">?<span class="classic">Enable (Disable) the display of catapult targets</span></em></td><td><?php echo NEW_FUNCTIONS_DISPLAY_CATAPULT_TARGET ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Manual on Nature and Natars <em class="tooltip">?<span class="classic">Enable (Disable) manual info</span></em></td><td><?php echo NEW_FUNCTIONS_MANUAL_NATURENATARS ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Direct links placement <em class="tooltip">?<span class="classic">Left menu vs right menu</span></em></td><td><?php echo NEW_FUNCTIONS_DISPLAY_LINKS ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Medal Veteran Player <em class="tooltip">?<span class="classic">3 years</span></em></td><td><?php echo NEW_FUNCTIONS_MEDAL_3YEAR ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Medal Veteran Player 5a <em class="tooltip">?<span class="classic">5 years</span></em></td><td><?php echo NEW_FUNCTIONS_MEDAL_5YEAR ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Medal Veteran Player 10a <em class="tooltip">?<span class="classic">10 years</span></em></td><td><?php echo NEW_FUNCTIONS_MEDAL_10YEAR ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Special Medals<em class="tooltip">?<span class="classic">Special Medals</span></em></td><td><?php echo NEW_FUNCTIONS_SPECIAL_MEDALS_SYSTEM ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Server Milestones<em class="tooltip">?<span class="classic">Server Milestones</span></em></td><td><?php echo NEW_FUNCTIONS_MILESTONES ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Server Medal Reset Timer<em class="tooltip">?<span class="classic">Server Medal Reset Timer</span></em></td><td><?php echo NEW_FUNCTIONS_MEDAL_RESET ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>T4 Hero (items, adventures, auction)<em class="tooltip">?<span class="classic">T4 Hero (items, adventures, auction)</span></em></td><td><?php echo NEW_FUNCTIONS_HERO_T4 ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Registration Bonus Gold<em class="tooltip">?<span class="classic">Give every newly registered player a one-time gold bonus at account creation</span></em></td><td><?php echo (defined('NEW_FUNCTION_REGISTRATION_GOLD') && NEW_FUNCTION_REGISTRATION_GOLD) ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td>Registration Bonus Gold – amount<em class="tooltip">?<span class="classic">How much gold each new player receives when the bonus is enabled</span></em></td><td><?php echo (defined('NEW_FUNCTION_REGISTRATION_GOLD_VALUE') ? (int) NEW_FUNCTION_REGISTRATION_GOLD_VALUE : 200); ?></td></tr>
|
||||
<tr><td><?php echo ADM_DISPLAY_OASIS_IN_PROFILE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_DISPLAY_OF_OASES_OF_EACH; ?></span></em></td><td><?php echo NEW_FUNCTIONS_OASIS ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_ALLIANCE_INVITATION_MESSAGE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_SENDING_AN_IN_GAME_MESSAGE_TO; ?></span></em></td><td><?php echo NEW_FUNCTIONS_ALLIANCE_INVITATION ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_NEW_ALLIANCE_EMBASSY_MECHANICS; ?><em class="tooltip">?<span class="classic">https://github.com/Shadowss/TravianZ/wiki/New-Alliance-&-Embassy-Mechanics</span></em></td><td><?php echo NEW_FUNCTIONS_EMBASSY_MECHANICS ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_NEW_FORUM_POST_MESSAGE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_FORUM_SUBSCRIPTION_MESSAGES; ?></span></em></td><td><?php echo NEW_FUNCTIONS_FORUM_POST_MESSAGE ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_TRIBES_IMAGES_IN_PROFILE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_DISPLAYING_IMAGES_OF_TRIBES; ?></span></em></td><td><?php echo NEW_FUNCTIONS_TRIBE_IMAGES ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_NEW_TRIBE_HUNS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_HUNS_TRIBE; ?></span></em></td><td><?php echo (defined('NEW_FUNCTION_TRIBE_HUNS') && NEW_FUNCTION_TRIBE_HUNS) ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_NEW_TRIBE_EGYPTIANS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_EGYPTIANS_TRIBE; ?></span></em></td><td><?php echo (defined('NEW_FUNCTION_TRIBE_EGIPTEANS') && NEW_FUNCTION_TRIBE_EGIPTEANS) ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_NEW_TRIBE_SPARTANS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_SPARTANS_TRIBE; ?></span></em></td><td><?php echo (defined('NEW_FUNCTION_TRIBE_SPARTANS') && NEW_FUNCTION_TRIBE_SPARTANS) ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_NEW_TRIBE_VIKINGS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_VIKINGS_TRIBE; ?></span></em></td><td><?php echo (defined('NEW_FUNCTION_TRIBE_VIKINGS') && NEW_FUNCTION_TRIBE_VIKINGS) ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_MHS_IMAGES_IN_PROFILE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_DISPLAYING_IMAGES_OF_MULTIHUN; ?></span></em></td><td><?php echo NEW_FUNCTIONS_MHS_IMAGES ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_DISPLAY_ARTIFACT_IN_PROFILE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_DISPLAY_OF_THE_ARTIFACT; ?></span></em></td><td><?php echo NEW_FUNCTIONS_DISPLAY_ARTIFACT ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_DISPLAY_WOW_IN_PROFILE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_DISPLAY_OF_THE_WONDER; ?></span></em></td><td><?php echo NEW_FUNCTIONS_DISPLAY_WONDER ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_VACATION_MODE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_VACATION_MODE; ?></span></em></td><td><?php echo NEW_FUNCTIONS_VACATION ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_CATAPULT_TARGETS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_DISPLAY_OF_CATAPULT_TARGE; ?></span></em></td><td><?php echo NEW_FUNCTIONS_DISPLAY_CATAPULT_TARGET ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_MANUAL_ON_NATURE_AND_NATARS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_MANUAL_INFO; ?></span></em></td><td><?php echo NEW_FUNCTIONS_MANUAL_NATURENATARS ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_DIRECT_LINKS_PLACEMENT; ?><em class="tooltip">?<span class="classic"><?php echo ADM_LEFT_MENU_VS_RIGHT_MENU; ?></span></em></td><td><?php echo NEW_FUNCTIONS_DISPLAY_LINKS ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_MEDAL_VETERAN_PLAYER; ?><em class="tooltip">?<span class="classic"><?php echo ADM_3_YEARS; ?></span></em></td><td><?php echo NEW_FUNCTIONS_MEDAL_3YEAR ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_MEDAL_VETERAN_PLAYER_5A; ?><em class="tooltip">?<span class="classic"><?php echo ADM_5_YEARS; ?></span></em></td><td><?php echo NEW_FUNCTIONS_MEDAL_5YEAR ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_MEDAL_VETERAN_PLAYER_10A; ?><em class="tooltip">?<span class="classic"><?php echo ADM_10_YEARS; ?></span></em></td><td><?php echo NEW_FUNCTIONS_MEDAL_10YEAR ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_SPECIAL_MEDALS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_SPECIAL_MEDALS; ?></span></em></td><td><?php echo NEW_FUNCTIONS_SPECIAL_MEDALS_SYSTEM ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_SERVER_MILESTONES; ?><em class="tooltip">?<span class="classic"><?php echo ADM_SERVER_MILESTONES; ?></span></em></td><td><?php echo NEW_FUNCTIONS_MILESTONES ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_SERVER_MEDAL_RESET_TIMER; ?><em class="tooltip">?<span class="classic"><?php echo ADM_SERVER_MEDAL_RESET_TIMER; ?></span></em></td><td><?php echo NEW_FUNCTIONS_MEDAL_RESET ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_T4_HERO_ITEMS_ADVENTURES_AUCTION; ?><em class="tooltip">?<span class="classic"><?php echo ADM_T4_HERO_ITEMS_ADVENTURES_AUCTION; ?></span></em></td><td><?php echo NEW_FUNCTIONS_HERO_T4 ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_REGISTRATION_BONUS_GOLD; ?><em class="tooltip">?<span class="classic"><?php echo ADM_GIVE_EVERY_NEWLY_REGISTERED_PLAYER_A_ONE_TIM; ?></span></em></td><td><?php echo (defined('NEW_FUNCTION_REGISTRATION_GOLD') && NEW_FUNCTION_REGISTRATION_GOLD) ? "<span class='badge green'>Enabled</span>" : "<span class='badge red'>Disabled</span>"; ?></td></tr>
|
||||
<tr><td><?php echo ADM_REGISTRATION_BONUS_GOLD_AMOUNT; ?><em class="tooltip">?<span class="classic"><?php echo ADM_HOW_MUCH_GOLD_EACH_NEW_PLAYER_RECEIVES_WHEN; ?></span></em></td><td><?php echo (defined('NEW_FUNCTION_REGISTRATION_GOLD_VALUE') ? (int) NEW_FUNCTION_REGISTRATION_GOLD_VALUE : 200); ?></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -75,18 +75,18 @@ $autoOff = (int)($cfg['auto_off_hours'] ?? 0);
|
||||
<div class="dbg-wrap">
|
||||
|
||||
<div class="dbg-head">
|
||||
<h2>🐞 Debug Error Log</h2>
|
||||
<h2><?php echo ADM_DEBUG_ERROR_LOG; ?></h2>
|
||||
<span class="dbg-state <?php echo $isOn ? 'dbg-on' : 'dbg-off'; ?>">
|
||||
<?php echo $isOn ? 'CAPTURE ON' : 'CAPTURE OFF'; ?>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="dbg-card">
|
||||
<h3>Status</h3>
|
||||
<h3><?php echo ADM_STATUS; ?></h3>
|
||||
<div class="dbg-row">
|
||||
<span>Capture is <b><?php echo $isOn ? 'ON' : 'OFF'; ?></b><?php echo $isOn ? ' since '.$since : ''; ?>.</span>
|
||||
<span>Auto-off: <b><?php echo $autoOff > 0 ? $autoOff.' h' : 'never'; ?></b></span>
|
||||
<span>Log size: <b><?php echo number_format($logSize / 1024, 1); ?> KB</b></span>
|
||||
<span><?php echo ADM_CAPTURE_IS; ?><b><?php echo $isOn ? 'ON' : 'OFF'; ?></b><?php echo $isOn ? ' since '.$since : ''; ?>.</span>
|
||||
<span><?php echo ADM_AUTO_OFF; ?><b><?php echo $autoOff > 0 ? $autoOff.' h' : 'never'; ?></b></span>
|
||||
<span><?php echo ADM_LOG_SIZE; ?><b><?php echo number_format($logSize / 1024, 1); ?> KB</b></span>
|
||||
</div>
|
||||
<form action="../GameEngine/Admin/Mods/debugLog.php" method="POST" style="display:inline">
|
||||
<?php echo csrf_field(); ?>
|
||||
@@ -96,44 +96,42 @@ $autoOff = (int)($cfg['auto_off_hours'] ?? 0);
|
||||
<?php echo $isOn ? 'Turn capture OFF' : 'Turn capture ON'; ?>
|
||||
</button>
|
||||
</form>
|
||||
<p class="dbg-note">Transparent to players: errors are only written to the log file, never shown in-game and gameplay is unaffected.</p>
|
||||
<p class="dbg-note"><?php echo ADM_TRANSPARENT_TO_PLAYERS_ERRORS_ARE_ONLY_WRITT; ?></p>
|
||||
</div>
|
||||
|
||||
<div class="dbg-card">
|
||||
<h3>Capture settings</h3>
|
||||
<h3><?php echo ADM_CAPTURE_SETTINGS; ?></h3>
|
||||
<form action="../GameEngine/Admin/Mods/debugLog.php" method="POST">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="do" value="save">
|
||||
<div class="dbg-row">
|
||||
<label><input type="checkbox" name="lvl_warning" <?php echo !empty($cfg['lvl_warning']) ? 'checked' : ''; ?>> Warnings</label>
|
||||
<label><input type="checkbox" name="lvl_notice" <?php echo !empty($cfg['lvl_notice']) ? 'checked' : ''; ?>> Notices</label>
|
||||
<label><input type="checkbox" name="lvl_deprecated" <?php echo !empty($cfg['lvl_deprecated']) ? 'checked' : ''; ?>> Deprecated</label>
|
||||
<label><input type="checkbox" name="lvl_fatal" <?php echo !empty($cfg['lvl_fatal']) ? 'checked' : ''; ?>> Fatal errors</label>
|
||||
<label><input type="checkbox" name="lvl_warning" <?php echo !empty($cfg['lvl_warning']) ? 'checked' : ''; ?>><?php echo ADM_WARNINGS; ?></label>
|
||||
<label><input type="checkbox" name="lvl_notice" <?php echo !empty($cfg['lvl_notice']) ? 'checked' : ''; ?>><?php echo ADM_NOTICES; ?></label>
|
||||
<label><input type="checkbox" name="lvl_deprecated" <?php echo !empty($cfg['lvl_deprecated']) ? 'checked' : ''; ?>><?php echo ADM_DEPRECATED; ?></label>
|
||||
<label><input type="checkbox" name="lvl_fatal" <?php echo !empty($cfg['lvl_fatal']) ? 'checked' : ''; ?>><?php echo ADM_FATAL_ERRORS; ?></label>
|
||||
</div>
|
||||
<div class="dbg-row">
|
||||
<label>Max file size (MB):
|
||||
<input type="number" name="max_size_mb" min="1" max="200" value="<?php echo (int)($cfg['max_size_mb'] ?? 5); ?>">
|
||||
<label><?php echo ADM_MAX_FILE_SIZE_MB; ?><input type="number" name="max_size_mb" min="1" max="200" value="<?php echo (int)($cfg['max_size_mb'] ?? 5); ?>">
|
||||
</label>
|
||||
<label>Auto-off after (hours, 0 = never):
|
||||
<input type="number" name="auto_off_hours" min="0" max="168" value="<?php echo (int)($cfg['auto_off_hours'] ?? 6); ?>">
|
||||
<label><?php echo ADM_AUTO_OFF_AFTER_HOURS_0_NEVER; ?><input type="number" name="auto_off_hours" min="0" max="168" value="<?php echo (int)($cfg['auto_off_hours'] ?? 6); ?>">
|
||||
</label>
|
||||
<button type="submit" class="dbg-btn primary">Save settings</button>
|
||||
<button type="submit" class="dbg-btn primary"><?php echo ADM_SAVE_SETTINGS; ?></button>
|
||||
</div>
|
||||
<p class="dbg-note">Beyond the size cap the file is rotated to a single <code>.log.1</code> backup, so the total volume stays bounded.</p>
|
||||
<p class="dbg-note"><?php echo ADM_BEYOND_THE_SIZE_CAP_THE_FILE_IS_ROTATED_TO_A; ?><code>.log.1</code><?php echo ADM_BACKUP_SO_THE_TOTAL_VOLUME_STAYS_BOUNDED; ?></p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="dbg-card">
|
||||
<h3>Last <?php echo $maxLines; ?> lines</h3>
|
||||
<div class="dbg-actions">
|
||||
<a class="dbg-btn" href="../GameEngine/Admin/Mods/debugLog.php?do=download">⬇ Download full log</a>
|
||||
<a class="dbg-btn" href="../GameEngine/Admin/Mods/debugLog.php?do=download"><?php echo ADM_DOWNLOAD_FULL_LOG; ?></a>
|
||||
<form action="../GameEngine/Admin/Mods/debugLog.php" method="POST" style="display:inline"
|
||||
onsubmit="return confirm('Clear the debug log file?');">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="do" value="clear">
|
||||
<button type="submit" class="dbg-btn red">🗑 Clear log</button>
|
||||
<button type="submit" class="dbg-btn red"><?php echo ADM_CLEAR_LOG; ?></button>
|
||||
</form>
|
||||
<a class="dbg-btn" href="?p=debug_log">↻ Refresh</a>
|
||||
<a class="dbg-btn" href="?p=debug_log"><?php echo ADM_REFRESH; ?></a>
|
||||
</div>
|
||||
<div class="dbg-log" style="margin-top:8px"><?php
|
||||
if (empty($lines)) {
|
||||
|
||||
@@ -35,20 +35,20 @@ $members = $database->getAllMember($aid);
|
||||
|
||||
<div class="del-wrap">
|
||||
<div class="del-card">
|
||||
<h3>🗑 Delete Alliance</h3>
|
||||
<h3><?php echo ADM_DELETE_ALLIANCE; ?></h3>
|
||||
<div class="body">
|
||||
<p>Are you sure you want to permanently delete?:</p>
|
||||
<p><?php echo ADM_ARE_YOU_SURE_YOU_WANT_TO_PERMANENTLY_DELETE; ?></p>
|
||||
<p style="font-size:16px;margin:10px 0;"><b>[<?php echo htmlspecialchars($alidata['tag']);?>] <?php echo htmlspecialchars($alidata['name']);?></b></p>
|
||||
<p>Members: <b><?php echo count($members);?></b> | Points: <b><?php echo number_format($database->getVSumField(array_column($members,'id'),'pop')[0]['Total']?? 0);?></b></p>
|
||||
<p><?php echo ADM_MEMBERS_2; ?><b><?php echo count($members);?></b><?php echo ADM_POINTS_3; ?><b><?php echo number_format($database->getVSumField(array_column($members,'id'),'pop')[0]['Total']?? 0);?></b></p>
|
||||
|
||||
<div class="warn">⚠ All members will be removed from the alliance, permissions, diplomacy, logs and the alliance forum will be deleted. The action is irreversible!</div>
|
||||
<div class="warn"><?php echo ADM_ALL_MEMBERS_WILL_BE_REMOVED_FROM_THE_ALLIANC; ?></div>
|
||||
|
||||
<form method="POST" action="../GameEngine/Admin/Mods/delAli.php" onsubmit="return confirm('Last warning: DELETE PERMANENTLY?');">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="aid" value="<?php echo $aid;?>">
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id'];?>">
|
||||
<button type="submit" class="btn del">YES, DELETE</button>
|
||||
<a href="admin.php?p=alliance&aid=<?php echo $aid;?>" class="btn cancel">Cancel</a>
|
||||
<button type="submit" class="btn del"><?php echo ADM_YES_DELETE; ?></button>
|
||||
<a href="admin.php?p=alliance&aid=<?php echo $aid;?>" class="btn cancel"><?php echo ADM_CANCEL; ?></a>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -32,15 +32,15 @@ $nummedals = $sql['Total'];
|
||||
<table id="member">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Medal Information</th>
|
||||
<th><?php echo ADM_MEDAL_INFORMATION; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
<table id="profile">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>Week</td>
|
||||
<td>Medals</td>
|
||||
<td><?php echo ADM_WEEK; ?></td>
|
||||
<td><?php echo ADM_MEDALS_2; ?></td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -68,15 +68,15 @@ $nummedals = $sql['Total'];
|
||||
<table id="member">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Medal Week by Week</th>
|
||||
<th><?php echo ADM_MEDAL_WEEK_BY_WEEK; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
<table id="profile">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>Week</td>
|
||||
<td>Medals</td>
|
||||
<td><?php echo ADM_WEEK; ?></td>
|
||||
<td><?php echo ADM_MEDALS_2; ?></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -109,13 +109,13 @@ $nummedals = $sql['Total'];
|
||||
<table id="profile">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>Medal</td>
|
||||
<td>BB-Code</td>
|
||||
<td>Type</td>
|
||||
<td>Player</td>
|
||||
<td>Rank</td>
|
||||
<td>Week</td>
|
||||
<td>Points</td>
|
||||
<td><?php echo ADM_MEDAL; ?></td>
|
||||
<td><?php echo ADM_BB_CODE; ?></td>
|
||||
<td><?php echo ADM_TYPE; ?></td>
|
||||
<td><?php echo ADM_PLAYER_2; ?></td>
|
||||
<td><?php echo ADM_RANK; ?></td>
|
||||
<td><?php echo ADM_WEEK; ?></td>
|
||||
<td><?php echo ADM_POINTS_2; ?></td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@@ -73,8 +73,8 @@ if(isset($_GET['uid']) && (int)$_GET['uid'] > 0) {
|
||||
<div class="del-wrap">
|
||||
<div class="del-head">
|
||||
<div class="icon">⚠️</div>
|
||||
<h2>DELETE PLAYER PERMANENTLY</h2>
|
||||
<div class="warn">This action cannot be undone!</div>
|
||||
<h2><?php echo ADM_DELETE_PLAYER_PERMANENTLY; ?></h2>
|
||||
<div class="warn"><?php echo ADM_THIS_ACTION_CANNOT_BE_UNDONE; ?></div>
|
||||
</div>
|
||||
|
||||
<form action="../GameEngine/Admin/Mods/delUser.php" method="post" onsubmit="return confirm('ESTI SIGUR? Se va sterge tot: sate, trupe, rapoarte!')">
|
||||
@@ -83,31 +83,31 @@ if(isset($_GET['uid']) && (int)$_GET['uid'] > 0) {
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
|
||||
|
||||
<div class="card">
|
||||
<h3>🗑️ Player to delete</h3>
|
||||
<h3><?php echo ADM_PLAYER_TO_DELETE; ?></h3>
|
||||
|
||||
<div class="player-info">
|
||||
<div class="info-item"><b>Name</b><div class="val"><a href="?p=player&uid=<?php echo $target['id']; ?>"><?php echo htmlspecialchars($target['username']); ?></a></div></div>
|
||||
<div class="info-item"><b>Gold</b><div class="val"><?php echo $target['gold']; ?> <img src="../img/x.gif" class="gold" style="vertical-align:-2px;"></div></div>
|
||||
<div class="info-item"><b>Rank</b><div class="val">#<?php echo $rank; ?></div></div>
|
||||
<div class="info-item"><b>Population</b><div class="val"><?php echo number_format($totalpop); ?></div></div>
|
||||
<div class="info-item"><b>Villages</b><div class="val"><?php echo $villages; ?></div></div>
|
||||
<div class="info-item"><b>Plus ends</b><div class="val"><?php echo $target['plus'] > time() ? date('d.m.Y H:i',$target['plus']) : '-'; ?></div></div>
|
||||
<div class="info-item" style="grid-column:1/-1;border-bottom:none;"><b>Alliance</b><div class="val"><?php echo $database->getAllianceName($target['alliance']) ?: '-'; ?></div></div>
|
||||
<div class="info-item"><b><?php echo ADM_NAME; ?></b><div class="val"><a href="?p=player&uid=<?php echo $target['id']; ?>"><?php echo htmlspecialchars($target['username']); ?></a></div></div>
|
||||
<div class="info-item"><b><?php echo ADMIN_GOLD; ?></b><div class="val"><?php echo $target['gold']; ?> <img src="../img/x.gif" class="gold" style="vertical-align:-2px;"></div></div>
|
||||
<div class="info-item"><b><?php echo ADM_RANK; ?></b><div class="val">#<?php echo $rank; ?></div></div>
|
||||
<div class="info-item"><b><?php echo ADM_POPULATION; ?></b><div class="val"><?php echo number_format($totalpop); ?></div></div>
|
||||
<div class="info-item"><b><?php echo ADM_VILLAGES; ?></b><div class="val"><?php echo $villages; ?></div></div>
|
||||
<div class="info-item"><b><?php echo ADM_PLUS_ENDS; ?></b><div class="val"><?php echo $target['plus'] > time() ? date('d.m.Y H:i',$target['plus']) : '-'; ?></div></div>
|
||||
<div class="info-item" style="grid-column:1/-1;border-bottom:none;"><b><?php echo ADMIN_ALLIANCE; ?></b><div class="val"><?php echo $database->getAllianceName($target['alliance']) ?: '-'; ?></div></div>
|
||||
</div>
|
||||
|
||||
<div class="danger-box">
|
||||
<div class="icon">🚨</div>
|
||||
<div><b>WARNING:</b> All villages (<?php echo $villages; ?>), troops, buildings, reports, messages and player statistics will be <u>permanently</u> deleted. There is no recovery!</div>
|
||||
<div><b><?php echo ADM_WARNING; ?></b> All villages (<?php echo $villages; ?>), troops, buildings, reports, messages and player statistics will be <u><?php echo ADM_PERMANENTLY; ?></u><?php echo ADM_DELETED_THERE_IS_NO_RECOVERY; ?></div>
|
||||
</div>
|
||||
|
||||
<div class="confirm-area">
|
||||
<label for="pass">Confirm with your admin password:</label>
|
||||
<label for="pass"><?php echo ADM_CONFIRM_WITH_YOUR_ADMIN_PASSWORD; ?></label>
|
||||
<input type="password" name="pass" id="pass" placeholder="••••••••" required autocomplete="current-password">
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="?p=player&uid=<?php echo $uid; ?>" class="btn-cancel">← Cancel</a>
|
||||
<button type="submit" class="btn-delete">🗑️ DELETE PLAYER</button>
|
||||
<a href="?p=player&uid=<?php echo $uid; ?>" class="btn-cancel"><?php echo ADM_CANCEL_2; ?></a>
|
||||
<button type="submit" class="btn-delete"><?php echo ADM_DELETE_PLAYER; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
@@ -33,15 +33,15 @@ $nummedals = $sql['Total'];
|
||||
<table id="member">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Medal Information</th>
|
||||
<th><?php echo ADM_MEDAL_INFORMATION; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
<table id="profile">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>Week</td>
|
||||
<td>Medals</td>
|
||||
<td><?php echo ADM_WEEK; ?></td>
|
||||
<td><?php echo ADM_MEDALS_2; ?></td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -69,15 +69,15 @@ $nummedals = $sql['Total'];
|
||||
<table id="member">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Medal Week by Week</th>
|
||||
<th><?php echo ADM_MEDAL_WEEK_BY_WEEK; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
<table id="profile">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>Week</td>
|
||||
<td>Medals</td>
|
||||
<td><?php echo ADM_WEEK; ?></td>
|
||||
<td><?php echo ADM_MEDALS_2; ?></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -114,13 +114,13 @@ $nummedals = $sql['Total'];
|
||||
<table id="profile">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>Medal</td>
|
||||
<td>BB-Code</td>
|
||||
<td>Type</td>
|
||||
<td>Player</td>
|
||||
<td>Rank</td>
|
||||
<td>Week</td>
|
||||
<td>Points</td>
|
||||
<td><?php echo ADM_MEDAL; ?></td>
|
||||
<td><?php echo ADM_BB_CODE; ?></td>
|
||||
<td><?php echo ADM_TYPE; ?></td>
|
||||
<td><?php echo ADM_PLAYER_2; ?></td>
|
||||
<td><?php echo ADM_RANK; ?></td>
|
||||
<td><?php echo ADM_WEEK; ?></td>
|
||||
<td><?php echo ADM_POINTS_2; ?></td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@@ -45,16 +45,16 @@ if(isset($_GET['uid']))
|
||||
<tr>
|
||||
<td>
|
||||
<center>
|
||||
<b>Change Access</b>
|
||||
<b><?php echo ADM_CHANGE_ACCESS; ?></b>
|
||||
</center>
|
||||
</td>
|
||||
<td>
|
||||
<center>
|
||||
<select name="access" class="dropdown">
|
||||
<option value="0" <?php if($curaccess == 0) { echo 'selected="selected"'; } else { echo ''; } ?>>Banned</option>
|
||||
<option value="2" <?php if($curaccess == 2) { echo 'selected="selected"'; } else { echo ''; } ?>>Normal User</option>
|
||||
<option value="8" <?php if($curaccess == 8) { echo 'selected="selected"'; } else { echo ''; } ?>>Multihunter</option>
|
||||
<option value="9" <?php if($curaccess == 9) { echo 'selected="selected"'; } else { echo ''; } ?>>Admin</option>
|
||||
<option value="0" <?php if($curaccess == 0) { echo 'selected="selected"'; } else { echo ''; } ?>><?php echo ADM_BANNED; ?></option>
|
||||
<option value="2" <?php if($curaccess == 2) { echo 'selected="selected"'; } else { echo ''; } ?>><?php echo ADM_NORMAL_USER; ?></option>
|
||||
<option value="8" <?php if($curaccess == 8) { echo 'selected="selected"'; } else { echo ''; } ?>><?php echo ADM_MULTIHUNTER; ?></option>
|
||||
<option value="9" <?php if($curaccess == 9) { echo 'selected="selected"'; } else { echo ''; } ?>><?php echo ADMIN_ADMIN; ?></option>
|
||||
</select>
|
||||
</center>
|
||||
</td>
|
||||
@@ -62,7 +62,7 @@ if(isset($_GET['uid']))
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<center>
|
||||
<input type="image" src="../img/admin/b/ok1.gif" value="submit" title="Give Players Free Gold">
|
||||
<input type="image" src="../img/admin/b/ok1.gif" value="submit" title="<?php echo ADM_GIVE_PLAYERS_FREE_GOLD; ?>">
|
||||
</center>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -67,7 +67,7 @@ if(isset($id)) {
|
||||
|
||||
<div class="editAdd-wrap">
|
||||
<div class="editAdd-head">
|
||||
<h2>⚙️ Edit Additional: <a href="admin.php?p=player&uid=<?php echo $user['id']; ?>"><?php echo htmlspecialchars($user['username']); ?></a></h2>
|
||||
<h2><?php echo ADM_EDIT_ADDITIONAL; ?><a href="admin.php?p=player&uid=<?php echo $user['id']; ?>"><?php echo htmlspecialchars($user['username']); ?></a></h2>
|
||||
<div class="uid">UID: <?php echo $id; ?> | Gold: <?php echo $user['gold']; ?> <img src="../img/admin/gold.gif" style="vertical-align:-2px;"></div>
|
||||
</div>
|
||||
|
||||
@@ -79,17 +79,17 @@ if(isset($id)) {
|
||||
<div class="grid-2">
|
||||
<!-- LEFT: ACCOUNT CONTROL -->
|
||||
<div class="card">
|
||||
<h3>🔐 Account Control</h3>
|
||||
<h3><?php echo ADM_ACCOUNT_CONTROL; ?></h3>
|
||||
<div class="body">
|
||||
<div class="form-row">
|
||||
<label>Access Level</label>
|
||||
<label><?php echo ADM_ACCESS_LEVEL; ?></label>
|
||||
<div class="field">
|
||||
<?php if($id != $_SESSION['id']) { ?>
|
||||
<select name="access">
|
||||
<option value="0" <?php if($user['access']==0)echo'selected'; ?>>0 - Banned</option>
|
||||
<option value="2" <?php if($user['access']==2)echo'selected'; ?>>2 - Normal User</option>
|
||||
<option value="8" <?php if($user['access']==8)echo'selected'; ?>>8 - Multihunter</option>
|
||||
<option value="9" <?php if($user['access']==9)echo'selected'; ?>>9 - Admin</option>
|
||||
<option value="0" <?php if($user['access']==0)echo'selected'; ?>><?php echo ADM_0_BANNED; ?></option>
|
||||
<option value="2" <?php if($user['access']==2)echo'selected'; ?>><?php echo ADM_2_NORMAL_USER; ?></option>
|
||||
<option value="8" <?php if($user['access']==8)echo'selected'; ?>><?php echo ADM_8_MULTIHUNTER; ?></option>
|
||||
<option value="9" <?php if($user['access']==9)echo'selected'; ?>><?php echo ADM_9_ADMIN; ?></option>
|
||||
</select>
|
||||
<?php } else {
|
||||
$names=[0=>'Banned',2=>'Normal',8=>'Multihunter',9=>'Admin'];
|
||||
@@ -101,27 +101,27 @@ if(isset($id)) {
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<label>🏖 Vacation Mode</label>
|
||||
<label><?php echo ADM_VACATION_MODE_2; ?></label>
|
||||
<div class="field">
|
||||
<select name="vac_mode">
|
||||
<option value="0" <?php if(!$user['vac_mode']) echo 'selected'; ?>>0 - Disabled</option>
|
||||
<option value="1" <?php if($user['vac_mode']) echo 'selected'; ?>>1 - Enabled</option>
|
||||
<option value="0" <?php if(!$user['vac_mode']) echo 'selected'; ?>><?php echo ADM_0_DISABLED; ?></option>
|
||||
<option value="1" <?php if($user['vac_mode']) echo 'selected'; ?>><?php echo ADM_1_ENABLED; ?></option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<label>💰 Gold</label>
|
||||
<label><?php echo ADM_GOLD; ?></label>
|
||||
<div class="field input-icon">
|
||||
<input type="number" name="gold" value="<?php echo (int)$user['gold']; ?>">
|
||||
<img src="../img/admin/gold.gif" alt="gold">
|
||||
<img src="../img/admin/gold.gif" alt="<?php echo ADM_GOLD_2; ?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<label>🛡️ Protection</label>
|
||||
<label><?php echo ADM_PROTECTION_2; ?></label>
|
||||
<div class="field input-icon">
|
||||
<input type="number" name="protect" value="<?php echo $protect; ?>" min="0" max="30">
|
||||
<span style="font-size:12px;color:#666;">zile</span>
|
||||
<span style="font-size:12px;color:#666;"><?php echo ADM_ZILE; ?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -129,17 +129,17 @@ if(isset($id)) {
|
||||
|
||||
<!-- RIGHT: SITTERS -->
|
||||
<div class="card">
|
||||
<h3>👥 Sitters</h3>
|
||||
<h3><?php echo ADM_SITTERS; ?></h3>
|
||||
<div class="body">
|
||||
<div class="form-row">
|
||||
<label>Sitter 1 (UID)</label>
|
||||
<label><?php echo ADM_SITTER_1_UID; ?></label>
|
||||
<div class="field">
|
||||
<input type="number" name="sitter1" value="<?php echo (int)$user['sit1']; ?>">
|
||||
<span class="sitter-link"><?php echo $sitter1 ? '→ <a href="admin.php?p=player&uid='.$sitter1['id'].'">'.htmlspecialchars($sitter1['username']).'</a>' : 'No Sitter'; ?></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<label>Sitter 2 (UID)</label>
|
||||
<label><?php echo ADM_SITTER_2_UID; ?></label>
|
||||
<div class="field">
|
||||
<input type="number" name="sitter2" value="<?php echo (int)$user['sit2']; ?>">
|
||||
<span class="sitter-link"><?php echo $sitter2 ? '→ <a href="admin.php?p=player&uid='.$sitter2['id'].'">'.htmlspecialchars($sitter2['username']).'</a>' : 'No Sitter'; ?></span>
|
||||
@@ -151,22 +151,22 @@ if(isset($id)) {
|
||||
|
||||
<!-- STATISTICS -->
|
||||
<div class="card">
|
||||
<h3>📊 Statistics & Points</h3>
|
||||
<h3><?php echo ADM_STATISTICS_POINTS; ?></h3>
|
||||
<div class="body">
|
||||
<div class="grid-2">
|
||||
<div class="form-row"><label>🏛️ Culture Points</label><div class="field"><input type="number" name="cp" value="<?php echo round($user['cp']); ?>"></div></div>
|
||||
<div class="form-row"><label>⚔️ Attack Points</label><div class="field"><input type="number" name="off" value="<?php echo (int)$user['ap']; ?>"></div></div>
|
||||
<div class="form-row"><label>🛡️ Defence Points</label><div class="field"><input type="number" name="def" value="<?php echo (int)$user['dp']; ?>"></div></div>
|
||||
<div class="form-row"><label>💎 Resources Raided</label><div class="field"><input type="number" name="res" value="<?php echo (int)$user['RR']; ?>"></div></div>
|
||||
<div class="form-row"><label>⚔️ Total Attack</label><div class="field"><input type="number" name="ooff" value="<?php echo (int)$user['apall']; ?>"></div></div>
|
||||
<div class="form-row"><label>🛡️ Total Defence</label><div class="field"><input type="number" name="odef" value="<?php echo (int)$user['dpall']; ?>"></div></div>
|
||||
<div class="form-row"><label><?php echo ADM_CULTURE_POINTS; ?></label><div class="field"><input type="number" name="cp" value="<?php echo round($user['cp']); ?>"></div></div>
|
||||
<div class="form-row"><label><?php echo ADM_ATTACK_POINTS_2; ?></label><div class="field"><input type="number" name="off" value="<?php echo (int)$user['ap']; ?>"></div></div>
|
||||
<div class="form-row"><label><?php echo ADM_DEFENCE_POINTS_2; ?></label><div class="field"><input type="number" name="def" value="<?php echo (int)$user['dp']; ?>"></div></div>
|
||||
<div class="form-row"><label><?php echo ADM_RESOURCES_RAIDED; ?></label><div class="field"><input type="number" name="res" value="<?php echo (int)$user['RR']; ?>"></div></div>
|
||||
<div class="form-row"><label><?php echo ADM_TOTAL_ATTACK; ?></label><div class="field"><input type="number" name="ooff" value="<?php echo (int)$user['apall']; ?>"></div></div>
|
||||
<div class="form-row"><label><?php echo ADM_TOTAL_DEFENCE; ?></label><div class="field"><input type="number" name="odef" value="<?php echo (int)$user['dpall']; ?>"></div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="admin.php?p=player&uid=<?php echo $id; ?>" class="btn btn-back">← Back</a>
|
||||
<button type="submit" name="save" class="btn btn-save">💾 Save Changes</button>
|
||||
<a href="admin.php?p=player&uid=<?php echo $id; ?>" class="btn btn-back"><?php echo ADM_BACK; ?></a>
|
||||
<button type="submit" name="save" class="btn btn-save"><?php echo ADM_SAVE_CHANGES_2; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -79,8 +79,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_ADMIN_SHOWSTATS ?> <em class="tooltip">?<span class="classic"><?php echo CONF_ADMIN_SHOWSTATS_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="admin_rank">
|
||||
<option value="true" <?php if (INCLUDE_ADMIN==true) echo "selected";?>>True</option>
|
||||
<option value="false" <?php if (INCLUDE_ADMIN==false) echo "selected";?>>False</option>
|
||||
<option value="true" <?php if (INCLUDE_ADMIN==true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="false" <?php if (INCLUDE_ADMIN==false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -88,8 +88,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_ADMIN_SUPPMESS ?> <em class="tooltip">?<span class="classic"><?php echo CONF_ADMIN_SUPPMESS_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="admin_support_msgs">
|
||||
<option value="True" <?php if (ADMIN_RECEIVE_SUPPORT_MESSAGES==true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if (ADMIN_RECEIVE_SUPPORT_MESSAGES==false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if (ADMIN_RECEIVE_SUPPORT_MESSAGES==true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if (ADMIN_RECEIVE_SUPPORT_MESSAGES==false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -97,8 +97,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_ADMIN_RAIDATT ?> <em class="tooltip">?<span class="classic"><?php echo CONF_ADMIN_RAIDATT_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="admin_raidable">
|
||||
<option value="True" <?php if (ADMIN_ALLOW_INCOMING_RAIDS==true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if (ADMIN_ALLOW_INCOMING_RAIDS==false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if (ADMIN_ALLOW_INCOMING_RAIDS==true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if (ADMIN_ALLOW_INCOMING_RAIDS==false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -113,9 +113,7 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
<path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/>
|
||||
<polyline points="17 21 17 13 7 13 7 21"/>
|
||||
</svg>
|
||||
SAVE
|
||||
</button>
|
||||
</svg><?php echo ADM_SAVE; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
+13
-13
@@ -55,7 +55,7 @@ textarea{width:100%;box-sizing:border-box;min-height:120px;padding:8px;border:1p
|
||||
|
||||
<div class="editAli-wrap">
|
||||
<div class="editAli-head">
|
||||
<h2>✏️ Edit Alliance: <span><?php echo htmlspecialchars($alidata['tag']); ?></span> - <?php echo htmlspecialchars($alidata['name']); ?></h2>
|
||||
<h2><?php echo ADM_EDIT_ALLIANCE_2; ?><span><?php echo htmlspecialchars($alidata['tag']); ?></span> - <?php echo htmlspecialchars($alidata['name']); ?></h2>
|
||||
</div>
|
||||
|
||||
<form action="../GameEngine/Admin/Mods/editAli.php" method="POST">
|
||||
@@ -64,29 +64,29 @@ textarea{width:100%;box-sizing:border-box;min-height:120px;padding:8px;border:1p
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
|
||||
|
||||
<div class="card">
|
||||
<h3>⚙️ Basic Settings</h3>
|
||||
<h3><?php echo ADM_BASIC_SETTINGS; ?></h3>
|
||||
<div class="body">
|
||||
<div class="form-grid">
|
||||
<div class="form-row">
|
||||
<label>Alliance Tag (max 8)</label>
|
||||
<label><?php echo ADM_ALLIANCE_TAG_MAX_8; ?></label>
|
||||
<input type="text" name="tag" maxlength="8" value="<?php echo htmlspecialchars($alidata['tag']); ?>" required>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<label>Alliance Name</label>
|
||||
<label><?php echo ADM_ALLIANCE_NAME; ?></label>
|
||||
<input type="text" name="name" maxlength="25" value="<?php echo htmlspecialchars($alidata['name']); ?>" required>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<label>👑 Leader (Founder)</label>
|
||||
<label><?php echo ADM_LEADER_FOUNDER; ?></label>
|
||||
<select name="leader">
|
||||
<?php foreach($members as $m){
|
||||
$sel = $m['id']==$alidata['leader'] ? 'selected' : '';
|
||||
echo '<option value="'.$m['id'].'" '.$sel.'>'.htmlspecialchars($m['username']).'</option>';
|
||||
} ?>
|
||||
</select>
|
||||
<div class="hint">Schimbă fondatorul alianței</div>
|
||||
<div class="hint"><?php echo ADM_SCHIMB_FONDATORUL_ALIAN_EI; ?></div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<label>👥 Max Members</label>
|
||||
<label><?php echo ADM_MAX_MEMBERS; ?></label>
|
||||
<input type="number" name="max" min="3" max="60" value="<?php echo (int)($alidata['max'] ? $alidata['max'] : $calcMax); ?>">
|
||||
<div class="hint">Calculat automat: <?php echo $calcMax; ?> (Ambasada lvl <?php echo $embLevel; ?> × 3)</div>
|
||||
</div>
|
||||
@@ -95,22 +95,22 @@ textarea{width:100%;box-sizing:border-box;min-height:120px;padding:8px;border:1p
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<h3>📢 Alliance Notice (apare sus)</h3>
|
||||
<h3><?php echo ADM_ALLIANCE_NOTICE_APARE_SUS; ?></h3>
|
||||
<div class="body">
|
||||
<textarea name="notice" placeholder="Mesaj scurt pentru membri..."><?php echo htmlspecialchars($alidata['notice']); ?></textarea>
|
||||
<textarea name="notice" placeholder="<?php echo ADM_MESAJ_SCURT_PENTRU_MEMBRI; ?>"><?php echo htmlspecialchars($alidata['notice']); ?></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<h3>📖 Alliance Description (pagina publică)</h3>
|
||||
<h3><?php echo ADM_ALLIANCE_DESCRIPTION_PAGINA_PUBLIC; ?></h3>
|
||||
<div class="body">
|
||||
<textarea name="desc" style="min-height:200px;" placeholder="Descriere lungă, BBCode permis..."><?php echo htmlspecialchars($alidata['desc']); ?></textarea>
|
||||
<textarea name="desc" style="min-height:200px;" placeholder="<?php echo ADM_DESCRIERE_LUNG_BBCODE_PERMIS; ?>"><?php echo htmlspecialchars($alidata['desc']); ?></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<button type="submit" class="btn-save">💾 Save Alliance</button>
|
||||
<a href="admin.php?p=alliance&aid=<?php echo $aid; ?>" style="margin-left:12px;color:#555;text-decoration:none;">← Cancel</a>
|
||||
<button type="submit" class="btn-save"><?php echo ADM_SAVE_ALLIANCE; ?></button>
|
||||
<a href="admin.php?p=alliance&aid=<?php echo $aid; ?>" style="margin-left:12px;color:#555;text-decoration:none;"><?php echo ADM_CANCEL_2; ?></a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -68,24 +68,24 @@ code{background:#f1f5f9;padding:2px 5px;border-radius:4px;font-size:11px;word-br
|
||||
</style>
|
||||
|
||||
<div class="config-wrap">
|
||||
<div class="config-title">Cron & Automation</div>
|
||||
<div class="config-title"><?php echo ADM_CRON_AUTOMATION; ?></div>
|
||||
|
||||
<form action="../GameEngine/Admin/Mods/editCronSet.php" method="POST">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="id" id="id" value="<?php echo $_SESSION['id']; ?>">
|
||||
|
||||
<div class="config-card">
|
||||
<div class="config-head"><span>Current status</span></div>
|
||||
<div class="config-head"><span><?php echo ADM_CURRENT_STATUS; ?></span></div>
|
||||
<table class="config-table">
|
||||
<tr>
|
||||
<td class="b">Automation source</td>
|
||||
<td class="b"><?php echo ADM_AUTOMATION_SOURCE; ?></td>
|
||||
<td><?php echo $cronActive
|
||||
? "<span class='badge green'>Cron job</span>"
|
||||
: "<span class='badge red'>Page loads (fallback)</span>"; ?>
|
||||
<span class="hint">When the cron job is not running, the game still works: players' page loads process the tick, exactly as before the cron was introduced.</span></td>
|
||||
<span class="hint"><?php echo ADM_WHEN_THE_CRON_JOB_IS_NOT_RUNNING_THE_GAME_ST; ?></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Last cron tick</td>
|
||||
<td class="b"><?php echo ADM_LAST_CRON_TICK; ?></td>
|
||||
<td><?php
|
||||
if ($cronLastRun > 0) {
|
||||
echo date('d.m.Y H:i:s', $cronLastRun) . ' <span style="color:#777">(' . $cronAge . 's ago)</span>';
|
||||
@@ -96,54 +96,51 @@ code{background:#f1f5f9;padding:2px 5px;border-radius:4px;font-size:11px;word-br
|
||||
</tr>
|
||||
<?php if ($cronCmd !== '') { ?>
|
||||
<tr>
|
||||
<td class="b">Cron job command</td>
|
||||
<td class="b"><?php echo ADM_CRON_JOB_COMMAND; ?></td>
|
||||
<td><code><?php echo htmlspecialchars($cronCmd, ENT_QUOTES, 'UTF-8'); ?></code>
|
||||
<span class="hint">Add this in cPanel → Cron Jobs. Writing to cron.log instead of /dev/null lets you see errors if it fails to start.</span></td>
|
||||
<span class="hint"><?php echo ADM_ADD_THIS_IN_CPANEL_CRON_JOBS_WRITING_TO_CRON; ?></span></td>
|
||||
</tr>
|
||||
<?php } ?>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="config-card">
|
||||
<div class="config-head"><span>Settings</span></div>
|
||||
<div class="config-head"><span><?php echo ADM_SETTINGS; ?></span></div>
|
||||
<table class="config-table">
|
||||
<tr>
|
||||
<td class="b">Invocation length (seconds)
|
||||
<em class="tooltip">?<span>How long one cron.php invocation keeps working. Most shared hosts only allow a cron every 5 minutes, while Automation expects to run about every minute — so one invocation runs several ticks in a row. Use 300 for a "*/5" cron. Set 0 only if your host allows a cron every minute.</span></em>
|
||||
<td class="b"><?php echo ADM_INVOCATION_LENGTH_SECONDS; ?><em class="tooltip">?<span><?php echo ADM_HOW_LONG_ONE_CRON_PHP_INVOCATION_KEEPS_WORKI; ?></span></em>
|
||||
</td>
|
||||
<td><input class="fm" type="number" name="cron_loop" min="0" max="3300" value="<?php echo $cronLoop; ?>" style="width:120px">
|
||||
<span class="hint">0 = a single tick per invocation. Maximum 3300 (55 minutes).</span></td>
|
||||
<span class="hint"><?php echo ADM_0_A_SINGLE_TICK_PER_INVOCATION_MAXIMUM_3300; ?></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Tick interval (seconds)
|
||||
<em class="tooltip">?<span>How often Automation runs inside one invocation. Automation's own guard expects roughly 60 seconds; going lower mostly adds load without processing anything new.</span></em>
|
||||
<td class="b"><?php echo ADM_TICK_INTERVAL_SECONDS; ?><em class="tooltip">?<span><?php echo ADM_HOW_OFTEN_AUTOMATION_RUNS_INSIDE_ONE_INVOCAT; ?></span></em>
|
||||
</td>
|
||||
<td><input class="fm" type="number" name="cron_tick" min="15" max="900" value="<?php echo $cronTick; ?>" style="width:120px">
|
||||
<span class="hint">Recommended: 60. Allowed range 15–900.</span></td>
|
||||
<span class="hint"><?php echo ADM_RECOMMENDED_60_ALLOWED_RANGE_15_900; ?></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">HTTP trigger key
|
||||
<em class="tooltip">?<span>Only needed when calling cron.php over HTTP (for example from an external cron service). The server's own cron job does not use it. Regenerating invalidates any URL you configured elsewhere.</span></em>
|
||||
<td class="b"><?php echo ADM_HTTP_TRIGGER_KEY; ?><em class="tooltip">?<span><?php echo ADM_ONLY_NEEDED_WHEN_CALLING_CRON_PHP_OVER_HTTP; ?></span></em>
|
||||
</td>
|
||||
<td>
|
||||
<?php if ($cronKey === '') { ?>
|
||||
<span class="badge red">Not set</span> – one will be generated on save.
|
||||
<span class="badge red"><?php echo ADM_NOT_SET; ?></span> – one will be generated on save.
|
||||
<?php } else { ?>
|
||||
<span id="k1"><?php echo htmlspecialchars(substr($cronKey, 0, 6), ENT_QUOTES, 'UTF-8'); ?>••••••••<?php echo htmlspecialchars(substr($cronKey, -4), ENT_QUOTES, 'UTF-8'); ?></span>
|
||||
<span id="k2" style="display:none;word-break:break-all"><?php echo htmlspecialchars($cronKey, ENT_QUOTES, 'UTF-8'); ?></span>
|
||||
<a href="#" style="margin-left:6px" onclick="var a=document.getElementById('k1'),b=document.getElementById('k2');var h=(b.style.display==='none');a.style.display=h?'none':'';b.style.display=h?'':'none';this.textContent=h?'hide':'show';return false;">show</a>
|
||||
<a href="#" style="margin-left:6px" onclick="var a=document.getElementById('k1'),b=document.getElementById('k2');var h=(b.style.display==='none');a.style.display=h?'none':'';b.style.display=h?'':'none';this.textContent=h?'hide':'show';return false;"><?php echo ADM_SHOW; ?></a>
|
||||
<?php } ?>
|
||||
<span class="hint"><label><input type="checkbox" name="regenerate_key" value="1"> Generate a new key on save</label></span>
|
||||
<span class="hint"><label><input type="checkbox" name="regenerate_key" value="1"><?php echo ADM_GENERATE_A_NEW_KEY_ON_SAVE; ?></label></span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="config-card">
|
||||
<div class="config-head"><span>Database cleanup</span></div>
|
||||
<div class="config-head"><span><?php echo ADM_DATABASE_CLEANUP; ?></span></div>
|
||||
<table class="config-table">
|
||||
<tr>
|
||||
<td class="b">Last cleanup run</td>
|
||||
<td class="b"><?php echo ADM_LAST_CLEANUP_RUN; ?></td>
|
||||
<td><?php
|
||||
if (is_array($cleanupInfo) && !empty($cleanupInfo['time'])) {
|
||||
$r = isset($cleanupInfo['removed']) ? $cleanupInfo['removed'] : array();
|
||||
@@ -156,28 +153,25 @@ code{background:#f1f5f9;padding:2px 5px;border-radius:4px;font-size:11px;word-br
|
||||
echo "<span class='badge blue'>Not run yet</span>";
|
||||
}
|
||||
?>
|
||||
<span class="hint">Runs from Automation once per hour. Rows are removed in batches, so the first run on an old server catches up over several passes.</span></td>
|
||||
<span class="hint"><?php echo ADM_RUNS_FROM_AUTOMATION_ONCE_PER_HOUR_ROWS_ARE; ?></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Battle reports (days)
|
||||
<em class="tooltip">?<span>Unarchived reports older than this are deleted. Reports a player archived are never touched. 0 disables the rule.</span></em>
|
||||
<td class="b"><?php echo ADM_BATTLE_REPORTS_DAYS; ?><em class="tooltip">?<span><?php echo ADM_UNARCHIVED_REPORTS_OLDER_THAN_THIS_ARE_DELET; ?></span></em>
|
||||
</td>
|
||||
<td><input class="fm" type="number" name="cleanup_reports" min="0" max="3650" value="<?php echo $cleanReports; ?>" style="width:100px">
|
||||
<span class="hint">0 = keep forever.</span></td>
|
||||
<span class="hint"><?php echo ADM_0_KEEP_FOREVER; ?></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Chat messages (days)
|
||||
<em class="tooltip">?<span>The chat window only ever shows the last 13 messages per alliance, so older history is not used anywhere in the game.</span></em>
|
||||
<td class="b"><?php echo ADM_CHAT_MESSAGES_DAYS; ?><em class="tooltip">?<span><?php echo ADM_THE_CHAT_WINDOW_ONLY_EVER_SHOWS_THE_LAST_13; ?></span></em>
|
||||
</td>
|
||||
<td><input class="fm" type="number" name="cleanup_chat" min="0" max="3650" value="<?php echo $cleanChat; ?>" style="width:100px">
|
||||
<span class="hint">0 = keep forever.</span></td>
|
||||
<span class="hint"><?php echo ADM_0_KEEP_FOREVER; ?></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Deleted messages (days)
|
||||
<em class="tooltip">?<span>Only messages deleted by BOTH the sender and the recipient are removed — they are no longer visible to anyone in the game. Disabled by default.</span></em>
|
||||
<td class="b"><?php echo ADM_DELETED_MESSAGES_DAYS; ?><em class="tooltip">?<span><?php echo ADM_ONLY_MESSAGES_DELETED_BY_BOTH_THE_SENDER_AND; ?></span></em>
|
||||
</td>
|
||||
<td><input class="fm" type="number" name="cleanup_messages" min="0" max="3650" value="<?php echo $cleanMessages; ?>" style="width:100px">
|
||||
<span class="hint">0 = disabled (default).</span></td>
|
||||
<span class="hint"><?php echo ADM_0_DISABLED_DEFAULT; ?></span></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
@@ -188,9 +182,7 @@ code{background:#f1f5f9;padding:2px 5px;border-radius:4px;font-size:11px;word-br
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
<path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/>
|
||||
<polyline points="17 21 17 13 7 13 7 21"/>
|
||||
</svg>
|
||||
SAVE
|
||||
</button>
|
||||
</svg><?php echo ADM_SAVE; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -71,8 +71,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_EXTRA_LIMITMAIL ?> <em class="tooltip">?<span class="classic"><?php echo CONF_EXTRA_LIMITMAIL_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="limit_mailbox">
|
||||
<option value="true" <?php if (LIMIT_MAILBOX==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if (LIMIT_MAILBOX==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if (LIMIT_MAILBOX==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if (LIMIT_MAILBOX==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -91,9 +91,7 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
<path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/>
|
||||
<polyline points="17 21 17 13 7 13 7 21"/>
|
||||
</svg>
|
||||
SAVE
|
||||
</button>
|
||||
</svg><?php echo ADM_SAVE; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -132,7 +132,7 @@ function go_url(url){ location=url; return false; }
|
||||
<span class="hero-name"><?php echo htmlspecialchars($hero['name']);?></span>
|
||||
<span class="lvl">Level <?php echo $hero['level'];?></span>
|
||||
</h2>
|
||||
<div class="hero-meta">Player: <a href="admin.php?p=player&uid=<?php echo $id;?>"><?php echo htmlspecialchars($user['username']);?></a></div>
|
||||
<div class="hero-meta"><?php echo ADM_PLAYER; ?><a href="admin.php?p=player&uid=<?php echo $id;?>"><?php echo htmlspecialchars($user['username']);?></a></div>
|
||||
</div>
|
||||
</div>
|
||||
<div><img class="unit u<?php echo $hero['unit'];?>" src="img/x.gif" alt=""></div>
|
||||
@@ -146,10 +146,10 @@ function go_url(url){ location=url; return false; }
|
||||
<input name="hlvl" type="hidden" value="0">
|
||||
|
||||
<div class="card">
|
||||
<h3>📝 Basic Info</h3>
|
||||
<h3><?php echo ADM_BASIC_INFO; ?></h3>
|
||||
<div class="body">
|
||||
<div class="form-row"><label>Hero Name</label><div class="field"><input name="hname" type="text" value="<?php echo htmlspecialchars($hero['name']);?>"></div></div>
|
||||
<div class="form-row"><label>Hero Unit</label><div class="field">
|
||||
<div class="form-row"><label><?php echo ADM_HERO_NAME; ?></label><div class="field"><input name="hname" type="text" value="<?php echo htmlspecialchars($hero['name']);?>"></div></div>
|
||||
<div class="form-row"><label><?php echo ADM_HERO_UNIT; ?></label><div class="field">
|
||||
<div class="unit-preview"><span id="unt"><img class="unit u<?php echo $hero['unit'];?>" src="img/x.gif"></span>
|
||||
<select name="hunit" onchange="check_unit(this)" style="flex:1;padding:6px 8px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;font-size:13px;">
|
||||
<?php
|
||||
@@ -185,13 +185,13 @@ function go_url(url){ location=url; return false; }
|
||||
?>
|
||||
</select></div>
|
||||
</div></div>
|
||||
<div class="form-row"><label>❤ Health</label><div class="field"><input name="hhealth" type="text" value="<?php echo round($hero['health']);?>" style="width:80px;"> %</div></div>
|
||||
<div class="form-row"><label>✨ Experience</label><div class="field"><b><span id="exp1"><?php echo $expPct;?></span>%</b> <input id="exp" name="exp" type="hidden" value="<?php echo $expPct;?>"></div></div>
|
||||
<div class="form-row"><label><?php echo ADM_HEALTH; ?></label><div class="field"><input name="hhealth" type="text" value="<?php echo round($hero['health']);?>" style="width:80px;"> %</div></div>
|
||||
<div class="form-row"><label><?php echo ADM_EXPERIENCE; ?></label><div class="field"><b><span id="exp1"><?php echo $expPct;?></span>%</b> <input id="exp" name="exp" type="hidden" value="<?php echo $expPct;?>"></div></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<h3>📈 Current Stats</h3>
|
||||
<h3><?php echo ADM_CURRENT_STATS; ?></h3>
|
||||
<div class="body" style="font-size:12px;line-height:1.8;">
|
||||
<?php
|
||||
// punctele nefolosite, nu suma statisticilor calculate (era gresit)
|
||||
@@ -201,13 +201,12 @@ function go_url(url){ location=url; return false; }
|
||||
$eTotal = 5 + ($hero['level'] * 5);
|
||||
$eFree = max(0, $eTotal - $eUsed);
|
||||
?>
|
||||
<div>Level: <b><?php echo $hero['level'];?></b> / <?php echo $eMaxLevel; ?>
|
||||
| Points used: <b><?php echo $eUsed; ?></b> of <b><?php echo $eTotal; ?></b>
|
||||
(free: <b><?php echo $eFree; ?></b>)</div>
|
||||
<div>Offence: <b><?php echo $hero['atk'];?></b> (Lv <?php echo $hero['attack'];?>)</div>
|
||||
<div>Defence: <b><?php echo $hero['di']."/".$hero['dc'];?></b> (Lv <?php echo $hero['defence'];?>)</div>
|
||||
<div>Off-Bonus: <b><?php echo ($hero['ob']-1)*100;?>%</b> | Def-Bonus: <b><?php echo ($hero['db']-1)*100;?>%</b></div>
|
||||
<div>Regen: <b><?php echo $hero['regeneration']*5*SPEED;?>/day</b></div>
|
||||
<div><?php echo ADM_LEVEL; ?><b><?php echo $hero['level'];?></b> / <?php echo $eMaxLevel; ?>
|
||||
| Points used: <b><?php echo $eUsed; ?></b><?php echo ADM_OF; ?><b><?php echo $eTotal; ?></b><?php echo ADM_FREE; ?><b><?php echo $eFree; ?></b>)</div>
|
||||
<div><?php echo ADM_OFFENCE; ?><b><?php echo $hero['atk'];?></b> (Lv <?php echo $hero['attack'];?>)</div>
|
||||
<div><?php echo ADM_DEFENCE; ?><b><?php echo $hero['di']."/".$hero['dc'];?></b> (Lv <?php echo $hero['defence'];?>)</div>
|
||||
<div><?php echo ADM_OFF_BONUS; ?><b><?php echo ($hero['ob']-1)*100;?>%</b><?php echo ADM_DEF_BONUS; ?><b><?php echo ($hero['db']-1)*100;?>%</b></div>
|
||||
<div><?php echo ADM_REGEN; ?><b><?php echo $hero['regeneration']*5*SPEED;?>/day</b></div>
|
||||
<?php if (defined('NEW_FUNCTIONS_HERO_T4') && NEW_FUNCTIONS_HERO_T4) {
|
||||
$eResPts = (int)($hero['resources'] ?? 0);
|
||||
$eResType = (int)($hero['res_type'] ?? 0);
|
||||
@@ -218,13 +217,13 @@ function go_url(url){ location=url; return false; }
|
||||
? (int) round($eResPts * $ePerOne * SPEED)
|
||||
: (int) round($eResPts * $ePerAll * SPEED);
|
||||
?>
|
||||
<div>Resources: <b><?php echo $eAmount; ?>/h</b> (<?php echo $eNames[$eResType] ?? 'all resources'; ?>, Lv <?php echo $eResPts; ?>)</div>
|
||||
<div><?php echo ADM_RESOURCES; ?><b><?php echo $eAmount; ?>/h</b> (<?php echo $eNames[$eResType] ?? 'all resources'; ?>, Lv <?php echo $eResPts; ?>)</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<h3>⚔ Add Points</h3>
|
||||
<h3><?php echo ADM_ADD_POINTS; ?></h3>
|
||||
<div class="body">
|
||||
<?php if($isMax):?>
|
||||
<div style="text-align:center;padding:8px;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;color:#92400e;font-size:12px;margin-bottom:10px;">
|
||||
@@ -232,7 +231,7 @@ function go_url(url){ location=url; return false; }
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<table class="stat-table">
|
||||
<thead><tr><th>Attribute</th><th style="width:80px;text-align:center;">Current</th><th style="width:120px;text-align:center;">Add</th><th style="width:60px;text-align:center;">New</th></tr></thead>
|
||||
<thead><tr><th><?php echo ADM_ATTRIBUTE; ?></th><th style="width:80px;text-align:center;"><?php echo ADM_CURRENT; ?></th><th style="width:120px;text-align:center;"><?php echo ADM_ADD; ?></th><th style="width:60px;text-align:center;"><?php echo ADM_NEW; ?></th></tr></thead>
|
||||
<tbody>
|
||||
<?php
|
||||
$attrs = [
|
||||
@@ -256,7 +255,7 @@ function go_url(url){ location=url; return false; }
|
||||
</table>
|
||||
<?php if (defined('NEW_FUNCTIONS_HERO_T4') && NEW_FUNCTIONS_HERO_T4) { ?>
|
||||
<div class="form-row" style="margin-top:10px;">
|
||||
<label>Produced resource</label>
|
||||
<label><?php echo ADM_PRODUCED_RESOURCE; ?></label>
|
||||
<div class="field">
|
||||
<select name="hrestype" style="padding:6px 8px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;font-size:13px;">
|
||||
<?php
|
||||
@@ -270,13 +269,13 @@ function go_url(url){ location=url; return false; }
|
||||
</div>
|
||||
</div>
|
||||
<?php } ?>
|
||||
<div style="text-align:center;margin-top:10px;font-size:12px;">Level nou: <b><span id="hlvl">0</span></b></div>
|
||||
<div style="text-align:center;margin-top:10px;font-size:12px;"><?php echo ADM_LEVEL_NOU; ?><b><span id="hlvl">0</span></b></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="admin.php?p=player&uid=<?php echo $id;?>" class="btn btn-back" onclick="return go_url(this.href)">← Back</a>
|
||||
<button type="submit" class="btn btn-save">💾 Save Hero</button>
|
||||
<a href="admin.php?p=player&uid=<?php echo $id;?>" class="btn btn-back" onclick="return go_url(this.href)"><?php echo ADM_BACK; ?></a>
|
||||
<button type="submit" class="btn btn-save"><?php echo ADM_SAVE_HERO; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -58,27 +58,27 @@ $t4SlotNames = [1=>'Helmet',2=>'Body',3=>'Right hand',4=>'Left hand',5=>'Shoes',
|
||||
</style>
|
||||
|
||||
<h2>T4 Hero controls — user #<?php echo $id; ?>
|
||||
<small><a href="admin.php?p=editHero&uid=<?php echo $id; ?>">« classic hero editor</a></small>
|
||||
<small><a href="admin.php?p=editHero&uid=<?php echo $id; ?>"><?php echo ADM_CLASSIC_HERO_EDITOR; ?></a></small>
|
||||
</h2>
|
||||
|
||||
<?php if (isset($_GET['ok'])) { ?><div class="t4a-msg ok">Action completed.</div><?php } ?>
|
||||
<?php if (isset($_GET['e'])) { ?><div class="t4a-msg err">Action failed (check the values and try again).</div><?php } ?>
|
||||
<?php if (isset($_GET['ok'])) { ?><div class="t4a-msg ok"><?php echo ADM_ACTION_COMPLETED; ?></div><?php } ?>
|
||||
<?php if (isset($_GET['e'])) { ?><div class="t4a-msg err"><?php echo ADM_ACTION_FAILED_CHECK_THE_VALUES_AND_TRY_AGAIN; ?></div><?php } ?>
|
||||
|
||||
<div class="t4a-card">
|
||||
<h3>Silver</h3>
|
||||
<h3><?php echo ADM_SILVER; ?></h3>
|
||||
<div class="body">
|
||||
<form action="../GameEngine/Admin/Mods/editHeroT4.php" method="POST" class="t4a-inline">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="t4admin" value="setsilver">
|
||||
<input type="hidden" name="uid" value="<?php echo $id; ?>">
|
||||
<input type="text" name="silver" value="<?php echo $t4Silver; ?>" size="10" style="text-align:right;">
|
||||
<button type="submit" class="t4a-btn">Set balance</button>
|
||||
<button type="submit" class="t4a-btn"><?php echo ADM_SET_BALANCE; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="t4a-card">
|
||||
<h3>Grant item</h3>
|
||||
<h3><?php echo ADM_GRANT_ITEM; ?></h3>
|
||||
<div class="body">
|
||||
<form action="../GameEngine/Admin/Mods/editHeroT4.php" method="POST" class="t4a-inline">
|
||||
<?php echo csrf_field(); ?>
|
||||
@@ -88,9 +88,8 @@ $t4SlotNames = [1=>'Helmet',2=>'Body',3=>'Right hand',4=>'Left hand',5=>'Shoes',
|
||||
<?php foreach ($heroItemCatalog as $t4Iid => $t4Def) { ?>
|
||||
<option value="<?php echo $t4Iid; ?>">#<?php echo $t4Iid; ?> — <?php echo $t4Def['name']; ?> (T<?php echo $t4Def['tier']; ?>, <?php echo $t4SlotNames[$t4Def['slot']]; ?>)</option>
|
||||
<?php } ?>
|
||||
</select>
|
||||
Qty: <input type="text" name="qty" value="1" size="3" style="text-align:center;">
|
||||
<button type="submit" class="t4a-btn">Grant</button>
|
||||
</select><?php echo ADM_QTY; ?><input type="text" name="qty" value="1" size="3" style="text-align:center;">
|
||||
<button type="submit" class="t4a-btn"><?php echo ADM_GRANT; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@@ -100,7 +99,7 @@ $t4SlotNames = [1=>'Helmet',2=>'Body',3=>'Right hand',4=>'Left hand',5=>'Shoes',
|
||||
<div class="body">
|
||||
<?php if (count($t4Inventory)) { ?>
|
||||
<table class="t4a-table">
|
||||
<tr><th>Row</th><th>Item</th><th>Slot</th><th>Qty</th><th>Equipped</th><th></th></tr>
|
||||
<tr><th><?php echo ADM_ROW; ?></th><th><?php echo ADM_ITEM; ?></th><th><?php echo ADM_SLOT; ?></th><th><?php echo ADM_QTY_2; ?></th><th><?php echo ADM_EQUIPPED; ?></th><th></th></tr>
|
||||
<?php foreach ($t4Inventory as $t4Row) { ?>
|
||||
<tr>
|
||||
<td>#<?php echo (int) $t4Row['id']; ?></td>
|
||||
@@ -115,7 +114,7 @@ $t4SlotNames = [1=>'Helmet',2=>'Body',3=>'Right hand',4=>'Left hand',5=>'Shoes',
|
||||
<input type="hidden" name="t4admin" value="delitem">
|
||||
<input type="hidden" name="uid" value="<?php echo $id; ?>">
|
||||
<input type="hidden" name="rowid" value="<?php echo (int) $t4Row['id']; ?>">
|
||||
<button type="submit" class="t4a-btn danger">Delete</button>
|
||||
<button type="submit" class="t4a-btn danger"><?php echo ADM_DELETE; ?></button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -130,7 +129,7 @@ $t4SlotNames = [1=>'Helmet',2=>'Body',3=>'Right hand',4=>'Left hand',5=>'Shoes',
|
||||
<div class="body">
|
||||
<?php if (count($t4Sales) || count($t4Bids)) { ?>
|
||||
<table class="t4a-table">
|
||||
<tr><th>Auction</th><th>Role</th><th>Item</th><th>Price</th><th>Ends</th><th></th></tr>
|
||||
<tr><th><?php echo ADM_AUCTION; ?></th><th><?php echo ADM_ROLE; ?></th><th><?php echo ADM_ITEM; ?></th><th><?php echo ADM_PRICE; ?></th><th><?php echo ADM_ENDS; ?></th><th></th></tr>
|
||||
<?php foreach ([['rows' => $t4Sales, 'role' => 'seller'], ['rows' => $t4Bids, 'role' => 'top bidder']] as $t4Group) { ?>
|
||||
<?php foreach ($t4Group['rows'] as $t4A) { ?>
|
||||
<tr>
|
||||
@@ -146,7 +145,7 @@ $t4SlotNames = [1=>'Helmet',2=>'Body',3=>'Right hand',4=>'Left hand',5=>'Shoes',
|
||||
<input type="hidden" name="t4admin" value="cancelauction">
|
||||
<input type="hidden" name="uid" value="<?php echo $id; ?>">
|
||||
<input type="hidden" name="aucid" value="<?php echo (int) $t4A['id']; ?>">
|
||||
<button type="submit" class="t4a-btn danger">Cancel</button>
|
||||
<button type="submit" class="t4a-btn danger"><?php echo ADM_CANCEL; ?></button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -158,16 +157,16 @@ $t4SlotNames = [1=>'Helmet',2=>'Body',3=>'Right hand',4=>'Left hand',5=>'Shoes',
|
||||
</div>
|
||||
|
||||
<div class="t4a-card">
|
||||
<h3>Adventures</h3>
|
||||
<h3><?php echo ADM_ADVENTURES; ?></h3>
|
||||
<div class="body">
|
||||
<?php if ($t4Running) { ?>
|
||||
<p><b>Running:</b> adventure #<?php echo (int) $t4Running['id']; ?>,
|
||||
<p><b><?php echo ADM_RUNNING; ?></b> adventure #<?php echo (int) $t4Running['id']; ?>,
|
||||
difficulty <?php echo (int) $t4Running['difficulty'] === 1 ? 'hard' : 'normal'; ?>,
|
||||
arrives <?php echo date('d.m H:i:s', (int) $t4Running['endtime']); ?> (do not delete running adventures).</p>
|
||||
<?php } ?>
|
||||
<?php if (count($t4Offers)) { ?>
|
||||
<table class="t4a-table">
|
||||
<tr><th>Offer</th><th>Difficulty</th><th>Duration</th><th>Expires</th><th></th></tr>
|
||||
<tr><th><?php echo ADM_OFFER; ?></th><th><?php echo ADM_DIFFICULTY; ?></th><th><?php echo ADM_DURATION; ?></th><th><?php echo ADM_EXPIRES; ?></th><th></th></tr>
|
||||
<?php foreach ($t4Offers as $t4O) { ?>
|
||||
<tr>
|
||||
<td>#<?php echo (int) $t4O['id']; ?></td>
|
||||
@@ -180,7 +179,7 @@ $t4SlotNames = [1=>'Helmet',2=>'Body',3=>'Right hand',4=>'Left hand',5=>'Shoes',
|
||||
<input type="hidden" name="t4admin" value="deladventure">
|
||||
<input type="hidden" name="uid" value="<?php echo $id; ?>">
|
||||
<input type="hidden" name="advid" value="<?php echo (int) $t4O['id']; ?>">
|
||||
<button type="submit" class="t4a-btn danger">Remove</button>
|
||||
<button type="submit" class="t4a-btn danger"><?php echo ADM_REMOVE; ?></button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -71,8 +71,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_LOG_BUILD ?> <em class="tooltip">?<span class="classic"><?php echo CONF_LOG_BUILD_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="log_build">
|
||||
<option value="true" <?php if (LOG_BUILD==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if (LOG_BUILD==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if (LOG_BUILD==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if (LOG_BUILD==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -80,8 +80,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_LOG_TECHNOLOGY ?> <em class="tooltip">?<span class="classic"><?php echo CONF_LOG_TECHNOLOGY_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="log_tech">
|
||||
<option value="true" <?php if (LOG_TECH==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if (LOG_TECH==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if (LOG_TECH==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if (LOG_TECH==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -89,8 +89,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_LOG_LOGIN ?> <em class="tooltip">?<span class="classic"><?php echo CONF_LOG_LOGIN_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="log_login">
|
||||
<option value="true" <?php if (LOG_LOGIN==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if (LOG_LOGIN==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if (LOG_LOGIN==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if (LOG_LOGIN==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -98,8 +98,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_LOG_GOLD ?> <em class="tooltip">?<span class="classic"><?php echo CONF_LOG_GOLD_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="log_gold_fin">
|
||||
<option value="true" <?php if (LOG_GOLD_FIN==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if (LOG_GOLD_FIN==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if (LOG_GOLD_FIN==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if (LOG_GOLD_FIN==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -107,8 +107,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_LOG_ADMIN ?> <em class="tooltip">?<span class="classic"><?php echo CONF_LOG_ADMIN_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="log_admin">
|
||||
<option value="true" <?php if (LOG_ADMIN==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if (LOG_ADMIN==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if (LOG_ADMIN==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if (LOG_ADMIN==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -116,8 +116,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_LOG_WAR ?> <em class="tooltip">?<span class="classic"><?php echo CONF_LOG_WAR_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="log_war">
|
||||
<option value="true" <?php if (LOG_WAR==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if (LOG_WAR==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if (LOG_WAR==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if (LOG_WAR==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -125,8 +125,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_LOG_MARKET ?> <em class="tooltip">?<span class="classic"><?php echo CONF_LOG_MARKET_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="log_market">
|
||||
<option value="true" <?php if (LOG_MARKET==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if (LOG_MARKET==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if (LOG_MARKET==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if (LOG_MARKET==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -134,8 +134,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_LOG_ILLEGAL ?> <em class="tooltip">?<span class="classic"><?php echo CONF_LOG_ILLEGAL_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="log_illegal">
|
||||
<option value="true" <?php if (LOG_ILLEGAL==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if (LOG_ILLEGAL==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if (LOG_ILLEGAL==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if (LOG_ILLEGAL==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -150,9 +150,7 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
<path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/>
|
||||
<polyline points="17 21 17 13 7 13 7 21"/>
|
||||
</svg>
|
||||
SAVE
|
||||
</button>
|
||||
</svg><?php echo ADM_SAVE; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -63,244 +63,244 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
|
||||
<div class="config-card">
|
||||
<div class="config-head">
|
||||
<span>Edit New Mechanics and Functions</span>
|
||||
<span><?php echo ADM_EDIT_NEW_MECHANICS_AND_FUNCTIONS; ?></span>
|
||||
</div>
|
||||
<table class="config-table">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="b">Display oasis in profile <em class="tooltip">?<span class="classic">Enable (Disable) the display of oases of each village in the player profile</span></em></td>
|
||||
<td class="b"><?php echo ADM_DISPLAY_OASIS_IN_PROFILE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_DISPLAY_OF_OASES_OF_EACH; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_oasis">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_OASIS == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_OASIS == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_OASIS == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_OASIS == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Alliance invitation message <em class="tooltip">?<span class="classic">Enable (Disable) sending an in-game message to the player, if he was invited to the alliance</span></em></td>
|
||||
<td class="b"><?php echo ADM_ALLIANCE_INVITATION_MESSAGE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_SENDING_AN_IN_GAME_MESSAGE_TO; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_alliance_invitation">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_ALLIANCE_INVITATION == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_ALLIANCE_INVITATION == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_ALLIANCE_INVITATION == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_ALLIANCE_INVITATION == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">New Alliance & Embassy Mechanics <em class="tooltip">?<span class="classic">For this setting, you can find more information on the link: <a href="https://github.com/Shadowss/TravianZ/wiki/New-Alliance-&-Embassy-Mechanics" target="_blank">https://github.com</a></span></em></td>
|
||||
<td class="b"><?php echo ADM_NEW_ALLIANCE_EMBASSY_MECHANICS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_FOR_THIS_SETTING_YOU_CAN_FIND_MORE_INFORMATI; ?><a href="https://github.com/Shadowss/TravianZ/wiki/New-Alliance-&-Embassy-Mechanics" target="_blank">https://github.com</a></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_embassy_mechanics">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_EMBASSY_MECHANICS == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_EMBASSY_MECHANICS == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_EMBASSY_MECHANICS == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_EMBASSY_MECHANICS == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">New forum post message <em class="tooltip">?<span class="classic">Enable (Disable) if a player leaves at least one message in the thread on the forum, he will receive in-game messages about the fact that new messages have appeared in the same thread (i.e. is technically "subscribed to")</span></em></td>
|
||||
<td class="b"><?php echo ADM_NEW_FORUM_POST_MESSAGE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_IF_A_PLAYER_LEAVES_AT_LEAST_O; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_forum_post_message">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_FORUM_POST_MESSAGE == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_FORUM_POST_MESSAGE == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_FORUM_POST_MESSAGE == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_FORUM_POST_MESSAGE == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Tribes images in profile <em class="tooltip">?<span class="classic">Enable (Disable) displaying images of tribes with a description in the players profile</span></em></td>
|
||||
<td class="b"><?php echo ADM_TRIBES_IMAGES_IN_PROFILE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_DISPLAYING_IMAGES_OF_TRIBES_W; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_tribe_images">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_TRIBE_IMAGES == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_TRIBE_IMAGES == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_TRIBE_IMAGES == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_TRIBE_IMAGES == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">MHs images in profile <em class="tooltip">?<span class="classic">Enable (Disable) displaying images of Multihunters with a description in the MHs profile</span></em></td>
|
||||
<td class="b"><?php echo ADM_MHS_IMAGES_IN_PROFILE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_DISPLAYING_IMAGES_OF_MULTIHUN_2; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_mhs_images">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_MHS_IMAGES == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_MHS_IMAGES == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_MHS_IMAGES == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_MHS_IMAGES == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Display artifact in profile <em class="tooltip">?<span class="classic">Enable (Disable) the display of the artifact in the player profile, opposite the corresponding village in which it is located</span></em></td>
|
||||
<td class="b"><?php echo ADM_DISPLAY_ARTIFACT_IN_PROFILE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_DISPLAY_OF_THE_ARTIFACT_I; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_display_artifact">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_DISPLAY_ARTIFACT == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_DISPLAY_ARTIFACT == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_DISPLAY_ARTIFACT == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_DISPLAY_ARTIFACT == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Display WoW in profile <em class="tooltip">?<span class="classic">Enable (Disable) the display of the wonder in the player profile, opposite the corresponding village in which it is located</span></em></td>
|
||||
<td class="b"><?php echo ADM_DISPLAY_WOW_IN_PROFILE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_DISPLAY_OF_THE_WONDER_IN; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_display_wonder">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_DISPLAY_WONDER == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_DISPLAY_WONDER == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_DISPLAY_WONDER == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_DISPLAY_WONDER == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Vacation Mode <em class="tooltip">?<span class="classic">Enable (Disable) vacation mode, will be displayed or hidden in the player profile menu</span></em></td>
|
||||
<td class="b"><?php echo ADM_VACATION_MODE; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_VACATION_MODE_WILL_BE_DISPLAY; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_vacation">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_VACATION == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_VACATION == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_VACATION == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_VACATION == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Catapult targets <em class="tooltip">?<span class="classic">Enable (Disable) the display of the targets of the catapults in the rally point that were sent by you</span></em></td>
|
||||
<td class="b"><?php echo ADM_CATAPULT_TARGETS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_DISPLAY_OF_THE_TARGETS_OF; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_display_catapult_target">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_DISPLAY_CATAPULT_TARGET == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_DISPLAY_CATAPULT_TARGET == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_DISPLAY_CATAPULT_TARGET == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_DISPLAY_CATAPULT_TARGET == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Manual on Nature and Natars <em class="tooltip">?<span class="classic">Enable (Disable) displaying information in the Manual about the troops of Nature and Natars</span></em></td>
|
||||
<td class="b"><?php echo ADM_MANUAL_ON_NATURE_AND_NATARS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_DISPLAYING_INFORMATION_IN_THE; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_manual_naturenatars">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_MANUAL_NATURENATARS == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_MANUAL_NATURENATARS == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_MANUAL_NATURENATARS == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_MANUAL_NATURENATARS == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Direct links placement <em class="tooltip">?<span class="classic">If Enabled, then the Direct links will be placed in the left menu, if Disabled then Direct links will be placed in the right menu as in the original Travian</span></em></td>
|
||||
<td class="b"><?php echo ADM_DIRECT_LINKS_PLACEMENT; ?><em class="tooltip">?<span class="classic"><?php echo ADM_IF_ENABLED_THEN_THE_DIRECT_LINKS_WILL_BE_PLA; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_display_links">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_DISPLAY_LINKS == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_DISPLAY_LINKS == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_DISPLAY_LINKS == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_DISPLAY_LINKS == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Medal Veteran Player <em class="tooltip">?<span class="classic">Enable (Disable) medal achieved for playing 3 years of Travian</span></em></td>
|
||||
<td class="b"><?php echo ADM_MEDAL_VETERAN_PLAYER; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_MEDAL_ACHIEVED_FOR_PLAYING_3; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_medal_3year">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_MEDAL_3YEAR == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_MEDAL_3YEAR == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_MEDAL_3YEAR == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_MEDAL_3YEAR == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Medal Veteran Player 5a <em class="tooltip">?<span class="classic">Enable (Disable) medal achieved for playing 5 years of Travian</span></em></td>
|
||||
<td class="b"><?php echo ADM_MEDAL_VETERAN_PLAYER_5A; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_MEDAL_ACHIEVED_FOR_PLAYING_5; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_medal_5year">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_MEDAL_5YEAR == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_MEDAL_5YEAR == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_MEDAL_5YEAR == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_MEDAL_5YEAR == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Medal Veteran Player 10a <em class="tooltip">?<span class="classic">Enable (Disable) medal achieved for playing 10 years of Travian</span></em></td>
|
||||
<td class="b"><?php echo ADM_MEDAL_VETERAN_PLAYER_10A; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_MEDAL_ACHIEVED_FOR_PLAYING_10; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_medal_10year">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_MEDAL_10YEAR == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_MEDAL_10YEAR == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_MEDAL_10YEAR == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_MEDAL_10YEAR == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Special Medals <em class="tooltip">?<span class="classic">Enable (Disable) special medals (artifact, hero, ww, wall, great store, etc.)</span></em></td>
|
||||
<td class="b"><?php echo ADM_SPECIAL_MEDALS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_SPECIAL_MEDALS_ARTIFACT_HERO; ?></span></em></td>
|
||||
<td>
|
||||
<select name="new_functions_special_medals_system">
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_SPECIAL_MEDALS_SYSTEM == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_SPECIAL_MEDALS_SYSTEM == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(NEW_FUNCTIONS_SPECIAL_MEDALS_SYSTEM == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(NEW_FUNCTIONS_SPECIAL_MEDALS_SYSTEM == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Server Milestones <em class="tooltip">?<span class="classic">Enable (Disable) the "Server Milestones" widget (first player to settle a 2nd village, reach 1000 population, capture an artefact, conquer a WW, conquer a WW building plan, found an alliance, or conquer a village from another player) shown at the top of Statistics » General</span></em>
|
||||
<?php if (!defined('NEW_FUNCTIONS_MILESTONES')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;">Not present in config.php yet — saving this form once will add it (defaults to False until then).</span><?php endif; ?>
|
||||
<td class="b"><?php echo ADM_SERVER_MILESTONES; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_SERVER_MILESTONES_WIDGET; ?></span></em>
|
||||
<?php if (!defined('NEW_FUNCTIONS_MILESTONES')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;"><?php echo ADM_NOT_PRESENT_IN_CONFIG_PHP_YET_SAVING_THIS_FO; ?></span><?php endif; ?>
|
||||
</td>
|
||||
<td>
|
||||
<select name="new_functions_milestones">
|
||||
<option value="True" <?php if(defined('NEW_FUNCTIONS_MILESTONES') && NEW_FUNCTIONS_MILESTONES == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTIONS_MILESTONES') || NEW_FUNCTIONS_MILESTONES == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(defined('NEW_FUNCTIONS_MILESTONES') && NEW_FUNCTIONS_MILESTONES == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTIONS_MILESTONES') || NEW_FUNCTIONS_MILESTONES == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Server Medal Reset Timer <em class="tooltip">?<span class="classic">Enable (Disable) the "Server Medal Reset Timer" widget in Player Top 10 and Alliance Top 10</span></em>
|
||||
<?php if (!defined('NEW_FUNCTIONS_MEDAL_RESET')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;">Not present in config.php yet — saving this form once will add it (defaults to False until then).</span><?php endif; ?>
|
||||
<td class="b"><?php echo ADM_SERVER_MEDAL_RESET_TIMER; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_SERVER_MEDAL_RESET_TIMER; ?></span></em>
|
||||
<?php if (!defined('NEW_FUNCTIONS_MEDAL_RESET')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;"><?php echo ADM_NOT_PRESENT_IN_CONFIG_PHP_YET_SAVING_THIS_FO; ?></span><?php endif; ?>
|
||||
</td>
|
||||
<td>
|
||||
<select name="new_functions_medal_reset">
|
||||
<option value="True" <?php if(defined('NEW_FUNCTIONS_MEDAL_RESET') && NEW_FUNCTIONS_MEDAL_RESET == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTIONS_MEDAL_RESET') || NEW_FUNCTIONS_MEDAL_RESET == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(defined('NEW_FUNCTIONS_MEDAL_RESET') && NEW_FUNCTIONS_MEDAL_RESET == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTIONS_MEDAL_RESET') || NEW_FUNCTIONS_MEDAL_RESET == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">T4 Hero (items, adventures, auction) <em class="tooltip">?<span class="classic">Enable (Disable) the "T4 Hero (items, adventures, auction)" System</span></em>
|
||||
<?php if (!defined('NEW_FUNCTIONS_HERO_T4')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;">Not present in config.php yet — saving this form once will add it (defaults to False until then).</span><?php endif; ?>
|
||||
<td class="b"><?php echo ADM_T4_HERO_ITEMS_ADVENTURES_AUCTION; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_THE_T4_HERO_ITEMS_ADVENTURES; ?></span></em>
|
||||
<?php if (!defined('NEW_FUNCTIONS_HERO_T4')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;"><?php echo ADM_NOT_PRESENT_IN_CONFIG_PHP_YET_SAVING_THIS_FO; ?></span><?php endif; ?>
|
||||
</td>
|
||||
<td>
|
||||
<select name="new_functions_hero_t4">
|
||||
<option value="True" <?php if(defined('NEW_FUNCTIONS_HERO_T4') && NEW_FUNCTIONS_HERO_T4 == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTIONS_HERO_T4') || NEW_FUNCTIONS_HERO_T4 == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(defined('NEW_FUNCTIONS_HERO_T4') && NEW_FUNCTIONS_HERO_T4 == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTIONS_HERO_T4') || NEW_FUNCTIONS_HERO_T4 == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">New Tribe: Huns <em class="tooltip">?<span class="classic">Enable (Disable) tribe Huns</span></em>
|
||||
<?php if (!defined('NEW_FUNCTION_TRIBE_HUNS')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;">Not present in config.php yet — saving this form once will add it (defaults to False until then).</span><?php endif; ?>
|
||||
<td class="b"><?php echo ADM_NEW_TRIBE_HUNS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_TRIBE_HUNS; ?></span></em>
|
||||
<?php if (!defined('NEW_FUNCTION_TRIBE_HUNS')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;"><?php echo ADM_NOT_PRESENT_IN_CONFIG_PHP_YET_SAVING_THIS_FO; ?></span><?php endif; ?>
|
||||
</td>
|
||||
<td>
|
||||
<select name="new_function_tribe_huns">
|
||||
<option value="True" <?php if(defined('NEW_FUNCTION_TRIBE_HUNS') && NEW_FUNCTION_TRIBE_HUNS == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTION_TRIBE_HUNS') || NEW_FUNCTION_TRIBE_HUNS == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(defined('NEW_FUNCTION_TRIBE_HUNS') && NEW_FUNCTION_TRIBE_HUNS == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTION_TRIBE_HUNS') || NEW_FUNCTION_TRIBE_HUNS == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">New Tribe: Egyptians <em class="tooltip">?<span class="classic">Enable (Disable) tribe Egyptians</span></em>
|
||||
<?php if (!defined('NEW_FUNCTION_TRIBE_EGIPTEANS')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;">Not present in config.php yet — saving this form once will add it (defaults to False until then).</span><?php endif; ?>
|
||||
<td class="b"><?php echo ADM_NEW_TRIBE_EGYPTIANS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_TRIBE_EGYPTIANS; ?></span></em>
|
||||
<?php if (!defined('NEW_FUNCTION_TRIBE_EGIPTEANS')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;"><?php echo ADM_NOT_PRESENT_IN_CONFIG_PHP_YET_SAVING_THIS_FO; ?></span><?php endif; ?>
|
||||
</td>
|
||||
<td>
|
||||
<select name="new_function_tribe_egipteans">
|
||||
<option value="True" <?php if(defined('NEW_FUNCTION_TRIBE_EGIPTEANS') && NEW_FUNCTION_TRIBE_EGIPTEANS == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTION_TRIBE_EGIPTEANS') || NEW_FUNCTION_TRIBE_EGIPTEANS == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(defined('NEW_FUNCTION_TRIBE_EGIPTEANS') && NEW_FUNCTION_TRIBE_EGIPTEANS == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTION_TRIBE_EGIPTEANS') || NEW_FUNCTION_TRIBE_EGIPTEANS == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">New Tribe: Spartans <em class="tooltip">?<span class="classic">Enable (Disable) tribe Spartans</span></em>
|
||||
<?php if (!defined('NEW_FUNCTION_TRIBE_SPARTANS')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;">Not present in config.php yet — saving this form once will add it (defaults to False until then).</span><?php endif; ?>
|
||||
<td class="b"><?php echo ADM_NEW_TRIBE_SPARTANS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_TRIBE_SPARTANS; ?></span></em>
|
||||
<?php if (!defined('NEW_FUNCTION_TRIBE_SPARTANS')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;"><?php echo ADM_NOT_PRESENT_IN_CONFIG_PHP_YET_SAVING_THIS_FO; ?></span><?php endif; ?>
|
||||
</td>
|
||||
<td>
|
||||
<select name="new_function_tribe_spartans">
|
||||
<option value="True" <?php if(defined('NEW_FUNCTION_TRIBE_SPARTANS') && NEW_FUNCTION_TRIBE_SPARTANS == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTION_TRIBE_SPARTANS') || NEW_FUNCTION_TRIBE_SPARTANS == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(defined('NEW_FUNCTION_TRIBE_SPARTANS') && NEW_FUNCTION_TRIBE_SPARTANS == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTION_TRIBE_SPARTANS') || NEW_FUNCTION_TRIBE_SPARTANS == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">New Tribe: Vikings <em class="tooltip">?<span class="classic">Enable (Disable) tribe Vikings</span></em>
|
||||
<?php if (!defined('NEW_FUNCTION_TRIBE_VIKINGS')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;">Not present in config.php yet — saving this form once will add it (defaults to False until then).</span><?php endif; ?>
|
||||
<td class="b"><?php echo ADM_NEW_TRIBE_VIKINGS; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_TRIBE_VIKINGS; ?></span></em>
|
||||
<?php if (!defined('NEW_FUNCTION_TRIBE_VIKINGS')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;"><?php echo ADM_NOT_PRESENT_IN_CONFIG_PHP_YET_SAVING_THIS_FO; ?></span><?php endif; ?>
|
||||
</td>
|
||||
<td>
|
||||
<select name="new_function_tribe_vikings">
|
||||
<option value="True" <?php if(defined('NEW_FUNCTION_TRIBE_VIKINGS') && NEW_FUNCTION_TRIBE_VIKINGS == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTION_TRIBE_VIKINGS') || NEW_FUNCTION_TRIBE_VIKINGS == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(defined('NEW_FUNCTION_TRIBE_VIKINGS') && NEW_FUNCTION_TRIBE_VIKINGS == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTION_TRIBE_VIKINGS') || NEW_FUNCTION_TRIBE_VIKINGS == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Registration Bonus Gold <em class="tooltip">?<span class="classic">Enable (Disable) a one-time gold bonus granted to every newly registered player at account creation (system accounts id≤3 are skipped). The amount is set in the field below.</span></em>
|
||||
<?php if (!defined('NEW_FUNCTION_REGISTRATION_GOLD')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;">Not present in config.php yet — saving this form once will add it (defaults to False until then).</span><?php endif; ?>
|
||||
<td class="b"><?php echo ADM_REGISTRATION_BONUS_GOLD; ?><em class="tooltip">?<span class="classic"><?php echo ADM_ENABLE_DISABLE_A_ONE_TIME_GOLD_BONUS_GRANTED; ?></span></em>
|
||||
<?php if (!defined('NEW_FUNCTION_REGISTRATION_GOLD')): ?><br><span style="color:#c0392b;font-size:11px;font-weight:normal;text-transform:none;"><?php echo ADM_NOT_PRESENT_IN_CONFIG_PHP_YET_SAVING_THIS_FO; ?></span><?php endif; ?>
|
||||
</td>
|
||||
<td>
|
||||
<select name="new_function_registration_gold">
|
||||
<option value="True" <?php if(defined('NEW_FUNCTION_REGISTRATION_GOLD') && NEW_FUNCTION_REGISTRATION_GOLD == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTION_REGISTRATION_GOLD') || NEW_FUNCTION_REGISTRATION_GOLD == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(defined('NEW_FUNCTION_REGISTRATION_GOLD') && NEW_FUNCTION_REGISTRATION_GOLD == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(!defined('NEW_FUNCTION_REGISTRATION_GOLD') || NEW_FUNCTION_REGISTRATION_GOLD == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Registration Bonus Gold – amount <em class="tooltip">?<span class="classic">How much gold each new player receives when the toggle above is True. Default: 200.</span></em></td>
|
||||
<td class="b"><?php echo ADM_REGISTRATION_BONUS_GOLD_AMOUNT; ?><em class="tooltip">?<span class="classic"><?php echo ADM_HOW_MUCH_GOLD_EACH_NEW_PLAYER_RECEIVES_WHEN_2; ?></span></em></td>
|
||||
<td>
|
||||
<input type="number" min="0" step="1" name="new_function_registration_gold_value" value="<?php echo (defined('NEW_FUNCTION_REGISTRATION_GOLD_VALUE') ? (int) NEW_FUNCTION_REGISTRATION_GOLD_VALUE : 200); ?>">
|
||||
</td>
|
||||
@@ -316,9 +316,7 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
<path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/>
|
||||
<polyline points="17 21 17 13 7 13 7 21"/>
|
||||
</svg>
|
||||
SAVE
|
||||
</button>
|
||||
</svg><?php echo ADM_SAVE; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -71,8 +71,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo EDIT_NEWSBOX1 ?> <em class="tooltip">?<span class="classic"><?php echo EDIT_NEWSBOX1_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="box1">
|
||||
<option value="true" <?php if (NEWSBOX1==true) echo "selected";?>>Enable</option>
|
||||
<option value="false" <?php if (NEWSBOX1==false) echo "selected";?>>Disable</option>
|
||||
<option value="true" <?php if (NEWSBOX1==true) echo "selected";?>><?php echo ADM_ENABLE; ?></option>
|
||||
<option value="false" <?php if (NEWSBOX1==false) echo "selected";?>><?php echo ADM_DISABLE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -80,8 +80,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo EDIT_NEWSBOX2 ?> <em class="tooltip">?<span class="classic"><?php echo EDIT_NEWSBOX2_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="box2">
|
||||
<option value="true" <?php if (NEWSBOX2==true) echo "selected";?>>Enable</option>
|
||||
<option value="false" <?php if (NEWSBOX2==false) echo "selected";?>>Disable</option>
|
||||
<option value="true" <?php if (NEWSBOX2==true) echo "selected";?>><?php echo ADM_ENABLE; ?></option>
|
||||
<option value="false" <?php if (NEWSBOX2==false) echo "selected";?>><?php echo ADM_DISABLE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -89,8 +89,8 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo EDIT_NEWSBOX3 ?> <em class="tooltip">?<span class="classic"><?php echo EDIT_NEWSBOX3_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="box3">
|
||||
<option value="true" <?php if (NEWSBOX3==true) echo "selected";?>>Enable</option>
|
||||
<option value="false" <?php if (NEWSBOX3==false) echo "selected";?>>Disable</option>
|
||||
<option value="true" <?php if (NEWSBOX3==true) echo "selected";?>><?php echo ADM_ENABLE; ?></option>
|
||||
<option value="false" <?php if (NEWSBOX3==false) echo "selected";?>><?php echo ADM_DISABLE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -105,9 +105,7 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
<path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/>
|
||||
<polyline points="17 21 17 13 7 13 7 21"/>
|
||||
</svg>
|
||||
SAVE
|
||||
</button>
|
||||
</svg><?php echo ADM_SAVE; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -58,7 +58,7 @@ if($id){
|
||||
<div class="over-head">
|
||||
<div class="icon">⚔️</div>
|
||||
<div>
|
||||
<h2>Overall Points: <a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<h2><?php echo ADM_OVERALL_POINTS; ?><a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<div class="sub">UID: <?php echo $uid; ?> • Rank: #<?php echo (int)$user['rank']; ?></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -71,19 +71,19 @@ if($id){
|
||||
|
||||
<div class="card">
|
||||
<div class="body">
|
||||
<div class="info">🛡️ Acestea sunt punctele <b>totale</b> din statistici (nu cele săptămânale). Se adună din toate atacurile.</div>
|
||||
<div class="info"><?php echo ADM_ACESTEA_SUNT_PUNCTELE_2; ?><b><?php echo ADM_TOTALE; ?></b><?php echo ADM_DIN_STATISTICI_NU_CELE_S_PT_M_NALE_SE_ADUN_D; ?></div>
|
||||
|
||||
<div class="stats-grid">
|
||||
<div class="stat-box off">
|
||||
<div class="icon">⚔️</div>
|
||||
<div class="label">Attack Points</div>
|
||||
<div class="label"><?php echo ADM_ATTACK_POINTS; ?></div>
|
||||
<div class="current">Current: <?php echo number_format($user['apall']); ?></div>
|
||||
<input type="number" name="off" value="<?php echo (int)$user['apall']; ?>" min="0" step="1">
|
||||
</div>
|
||||
|
||||
<div class="stat-box def">
|
||||
<div class="icon">🛡️</div>
|
||||
<div class="label">Defence Points</div>
|
||||
<div class="label"><?php echo ADM_DEFENCE_POINTS; ?></div>
|
||||
<div class="current">Current: <?php echo number_format($user['dpall']); ?></div>
|
||||
<input type="number" name="def" value="<?php echo (int)$user['dpall']; ?>" min="0" step="1">
|
||||
</div>
|
||||
@@ -92,8 +92,8 @@ if($id){
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back">← Back</a>
|
||||
<button type="submit" class="btn-save">💾 Save Points</button>
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back"><?php echo ADM_BACK; ?></a>
|
||||
<button type="submit" class="btn-save"><?php echo ADM_SAVE_POINTS; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -69,7 +69,7 @@ function genPw(){
|
||||
<div class="pw-head">
|
||||
<div class="icon">🔐</div>
|
||||
<div>
|
||||
<h2>Change Password: <a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<h2><?php echo ADM_CHANGE_PASSWORD; ?><a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<div class="sub">UID: <?php echo $uid; ?> • <?php echo htmlspecialchars($user['email']); ?></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -83,23 +83,23 @@ function genPw(){
|
||||
<div class="body">
|
||||
<div class="warning">
|
||||
<span>⚠️</span>
|
||||
<div><b>WARNING:</b> The password is changed instantly. The player will be logged out. No automatic email is sent.</div>
|
||||
<div><b><?php echo ADM_WARNING; ?></b><?php echo ADM_THE_PASSWORD_IS_CHANGED_INSTANTLY_THE_PLAYER; ?></div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="newpw">New Password</label>
|
||||
<label for="newpw"><?php echo ADM_NEW_PASSWORD; ?></label>
|
||||
<div class="input-wrap">
|
||||
<input type="text" id="newpw" name="newpw" value="" placeholder="Introdu parola nouă" autocomplete="new-password" required>
|
||||
<button type="button" class="toggle-eye" onclick="togglePw()" title="Show/Hide">👁️</button>
|
||||
<input type="text" id="newpw" name="newpw" value="" placeholder="<?php echo ADM_INTRODU_PAROLA_NOU; ?>" autocomplete="new-password" required>
|
||||
<button type="button" class="toggle-eye" onclick="togglePw()" title="<?php echo ADM_SHOW_HIDE; ?>">👁️</button>
|
||||
</div>
|
||||
<button type="button" class="btn-gen" onclick="genPw()">🎲 Generate secure password</button>
|
||||
<button type="button" class="btn-gen" onclick="genPw()"><?php echo ADM_GENERATE_SECURE_PASSWORD; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back">← Back</a>
|
||||
<button type="submit" class="btn-save">🔐 Change Password</button>
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back"><?php echo ADM_BACK; ?></a>
|
||||
<button type="submit" class="btn-save"><?php echo ADM_CHANGE_PASSWORD_2; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -61,7 +61,7 @@ if($id){
|
||||
|
||||
<div class="plus-wrap">
|
||||
<div class="plus-head">
|
||||
<h2>⭐ Plus & Bonuses: <a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<h2><?php echo ADM_PLUS_BONUSES; ?><a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<div>UID: <?php echo $uid;?></div>
|
||||
</div>
|
||||
|
||||
@@ -71,10 +71,10 @@ if($id){
|
||||
<input type="hidden" name="uid" value="<?php echo $uid;?>">
|
||||
<input type="hidden" name="id" value="<?php echo $id;?>">
|
||||
|
||||
<div class="info-box">ℹ️ The values add up. Put 5 to add 5 days, -5 to remove 5 days.</div>
|
||||
<div class="info-box"><?php echo ADM_THE_VALUES_ADD_UP_PUT_5_TO_ADD_5_DAYS_5_TO_R; ?></div>
|
||||
|
||||
<div class="card">
|
||||
<h3>📊 Current Active Bonuses</h3>
|
||||
<h3><?php echo ADM_CURRENT_ACTIVE_BONUSES; ?></h3>
|
||||
<div class="body">
|
||||
<div class="active-grid">
|
||||
<?php
|
||||
@@ -104,7 +104,7 @@ if($id){
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<h3>➕ Add / Remove Days</h3>
|
||||
<h3><?php echo ADM_ADD_REMOVE_DAYS; ?></h3>
|
||||
<div class="body">
|
||||
<div class="bonus-grid">
|
||||
<?php $items=['plus'=>['⭐','Travian Plus'],'wood'=>['🌲','+25% Wood'],'clay'=>['🧱','+25% Clay'],'iron'=>['⛏️','+25% Iron'],'crop'=>['🌾','+25% Crop']];
|
||||
@@ -114,8 +114,8 @@ if($id){
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back">← Back</a>
|
||||
<button type="submit" class="btn-save">💾 Apply Bonuses</button>
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back"><?php echo ADM_BACK; ?></a>
|
||||
<button type="submit" class="btn-save"><?php echo ADM_APPLY_BONUSES; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -144,14 +144,14 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_PLUS_ACCDURATION ?> <em class="tooltip">?<span class="classic"><?php echo CONF_PLUS_ACCDURATION_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="plus_time">
|
||||
<option value="(3600*12)" <?php if(PLUS_TIME==43200) echo "selected";?>>12 hours</option>
|
||||
<option value="(3600*24)" <?php if(PLUS_TIME==86400) echo "selected";?>>1 day</option>
|
||||
<option value="(3600*24*2)" <?php if(PLUS_TIME==172800) echo "selected";?>>2 days</option>
|
||||
<option value="(3600*24*3)" <?php if(PLUS_TIME==259200) echo "selected";?>>3 days</option>
|
||||
<option value="(3600*24*4)" <?php if(PLUS_TIME==345600) echo "selected";?>>4 days</option>
|
||||
<option value="(3600*24*5)" <?php if(PLUS_TIME==432000) echo "selected";?>>5 days</option>
|
||||
<option value="(3600*24*6)" <?php if(PLUS_TIME==518400) echo "selected";?>>6 days</option>
|
||||
<option value="(3600*24*7)" <?php if(PLUS_TIME==604800) echo "selected";?>>7 days</option>
|
||||
<option value="(3600*12)" <?php if(PLUS_TIME==43200) echo "selected";?>><?php echo ADM_12_HOURS; ?></option>
|
||||
<option value="(3600*24)" <?php if(PLUS_TIME==86400) echo "selected";?>><?php echo ADM_1_DAY; ?></option>
|
||||
<option value="(3600*24*2)" <?php if(PLUS_TIME==172800) echo "selected";?>><?php echo ADM_2_DAYS; ?></option>
|
||||
<option value="(3600*24*3)" <?php if(PLUS_TIME==259200) echo "selected";?>><?php echo ADM_3_DAYS; ?></option>
|
||||
<option value="(3600*24*4)" <?php if(PLUS_TIME==345600) echo "selected";?>><?php echo ADM_4_DAYS; ?></option>
|
||||
<option value="(3600*24*5)" <?php if(PLUS_TIME==432000) echo "selected";?>><?php echo ADM_5_DAYS; ?></option>
|
||||
<option value="(3600*24*6)" <?php if(PLUS_TIME==518400) echo "selected";?>><?php echo ADM_6_DAYS; ?></option>
|
||||
<option value="(3600*24*7)" <?php if(PLUS_TIME==604800) echo "selected";?>><?php echo ADM_7_DAYS; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -159,14 +159,14 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<td class="b"><?php echo CONF_PLUS_PRODUCTDURATION ?> <em class="tooltip">?<span class="classic"><?php echo CONF_PLUS_PRODUCTDURATION_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="plus_production">
|
||||
<option value="(3600*12)" <?php if(PLUS_TIME==43200) echo "selected";?>>12 hours</option>
|
||||
<option value="(3600*24)" <?php if(PLUS_TIME==86400) echo "selected";?>>1 day</option>
|
||||
<option value="(3600*24*2)" <?php if(PLUS_TIME==172800) echo "selected";?>>2 days</option>
|
||||
<option value="(3600*24*3)" <?php if(PLUS_TIME==259200) echo "selected";?>>3 days</option>
|
||||
<option value="(3600*24*4)" <?php if(PLUS_TIME==345600) echo "selected";?>>4 days</option>
|
||||
<option value="(3600*24*5)" <?php if(PLUS_TIME==432000) echo "selected";?>>5 days</option>
|
||||
<option value="(3600*24*6)" <?php if(PLUS_TIME==518400) echo "selected";?>>6 days</option>
|
||||
<option value="(3600*24*7)" <?php if(PLUS_TIME==604800) echo "selected";?>>7 days</option>
|
||||
<option value="(3600*12)" <?php if(PLUS_TIME==43200) echo "selected";?>><?php echo ADM_12_HOURS; ?></option>
|
||||
<option value="(3600*24)" <?php if(PLUS_TIME==86400) echo "selected";?>><?php echo ADM_1_DAY; ?></option>
|
||||
<option value="(3600*24*2)" <?php if(PLUS_TIME==172800) echo "selected";?>><?php echo ADM_2_DAYS; ?></option>
|
||||
<option value="(3600*24*3)" <?php if(PLUS_TIME==259200) echo "selected";?>><?php echo ADM_3_DAYS; ?></option>
|
||||
<option value="(3600*24*4)" <?php if(PLUS_TIME==345600) echo "selected";?>><?php echo ADM_4_DAYS; ?></option>
|
||||
<option value="(3600*24*5)" <?php if(PLUS_TIME==432000) echo "selected";?>><?php echo ADM_5_DAYS; ?></option>
|
||||
<option value="(3600*24*6)" <?php if(PLUS_TIME==518400) echo "selected";?>><?php echo ADM_6_DAYS; ?></option>
|
||||
<option value="(3600*24*7)" <?php if(PLUS_TIME==604800) echo "selected";?>><?php echo ADM_7_DAYS; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -181,9 +181,7 @@ if($_SESSION['access'] < 9) die(ACCESS_DENIED_ADMIN);
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
<path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/>
|
||||
<polyline points="17 21 17 13 7 13 7 21"/>
|
||||
</svg>
|
||||
SAVE
|
||||
</button>
|
||||
</svg><?php echo ADM_SAVE; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -68,7 +68,7 @@ function setDays(d){ document.getElementById('protect').value = d; }
|
||||
<div class="prot-head">
|
||||
<div class="icon">🛡️</div>
|
||||
<div>
|
||||
<h2>Protection: <a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<h2><?php echo ADM_PROTECTION; ?><a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<div class="sub">UID: <?php echo $uid; ?></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -82,30 +82,30 @@ function setDays(d){ document.getElementById('protect').value = d; }
|
||||
<div class="card">
|
||||
<div class="body">
|
||||
<div class="status-box <?php echo $isActive ? 'active' : 'expired'; ?>">
|
||||
<div class="label">Current Status</div>
|
||||
<div class="label"><?php echo ADM_CURRENT_STATUS_2; ?></div>
|
||||
<div class="date"><?php echo $isActive ? 'ACTIVE' : 'EXPIRED'; ?></div>
|
||||
<div class="left">Ends: <?php echo $ends; ?><?php if($isActive) echo " ($left days left)"; ?></div>
|
||||
</div>
|
||||
|
||||
<div class="input-group">
|
||||
<input type="number" id="protect" name="protect" value="0" min="0" max="365">
|
||||
<span>Days</span>
|
||||
<span><?php echo ADM_DAYS; ?></span>
|
||||
</div>
|
||||
|
||||
<div class="quick-btns">
|
||||
<button type="button" onclick="setDays(1)">+1 day</button>
|
||||
<button type="button" onclick="setDays(3)">+3 days</button>
|
||||
<button type="button" onclick="setDays(7)">+7 days</button>
|
||||
<button type="button" onclick="setDays(0)">Remove</button>
|
||||
<button type="button" onclick="setDays(1)"><?php echo ADM_1_DAY_2; ?></button>
|
||||
<button type="button" onclick="setDays(3)"><?php echo ADM_3_DAYS_2; ?></button>
|
||||
<button type="button" onclick="setDays(7)"><?php echo ADM_7_DAYS_2; ?></button>
|
||||
<button type="button" onclick="setDays(0)"><?php echo ADM_REMOVE; ?></button>
|
||||
</div>
|
||||
|
||||
<div class="info">💡 Set to 0 to remove protection. Protection is added from the time of saving.</div>
|
||||
<div class="info"><?php echo ADM_SET_TO_0_TO_REMOVE_PROTECTION_PROTECTION_IS; ?></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back">← Back</a>
|
||||
<button type="submit" class="btn-save">💾 Save Protection</button>
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back"><?php echo ADM_BACK; ?></a>
|
||||
<button type="submit" class="btn-save"><?php echo ADM_SAVE_PROTECTION; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -54,27 +54,27 @@ if($id){
|
||||
<table class="res-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<td style="width:140px">Resource</td>
|
||||
<td>Amount</td>
|
||||
<td style="width:160px">Maximum Capacity</td>
|
||||
<td style="width:140px"><?php echo ADM_RESOURCE; ?></td>
|
||||
<td><?php echo ADM_AMOUNT; ?></td>
|
||||
<td style="width:160px"><?php echo ADM_MAXIMUM_CAPACITY; ?></td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><div class="res-name"><img src="../img/admin/r/1.gif"> Wood</div></td>
|
||||
<td><div class="res-name"><img src="../img/admin/r/1.gif"><?php echo ADM_WOOD; ?></div></td>
|
||||
<td><input class="res-input" name="wood" value="<?php echo round($village['wood'],0); ?>"></td>
|
||||
<td rowspan="3"><input class="res-input" name="maxstore" value="<?php echo round($village['maxstore'],0); ?>"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="res-name"><img src="../img/admin/r/2.gif"> Clay</div></td>
|
||||
<td><div class="res-name"><img src="../img/admin/r/2.gif"><?php echo ADM_CLAY; ?></div></td>
|
||||
<td><input class="res-input" name="clay" value="<?php echo round($village['clay'],0); ?>"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="res-name"><img src="../img/admin/r/3.gif"> Iron</div></td>
|
||||
<td><div class="res-name"><img src="../img/admin/r/3.gif"><?php echo ADM_IRON; ?></div></td>
|
||||
<td><input class="res-input" name="iron" value="<?php echo round($village['iron'],0); ?>"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="res-name"><img src="../img/admin/r/4.gif"> Crop</div></td>
|
||||
<td><div class="res-name"><img src="../img/admin/r/4.gif"><?php echo ADM_CROP; ?></div></td>
|
||||
<td><input class="res-input" name="crop" value="<?php echo round($village['crop'],0); ?>"></td>
|
||||
<td><input class="res-input" name="maxcrop" value="<?php echo round($village['maxcrop'],0); ?>"></td>
|
||||
</tr>
|
||||
@@ -82,8 +82,8 @@ if($id){
|
||||
</table>
|
||||
|
||||
<div class="res-actions">
|
||||
<a href="../Admin/admin.php?p=village&did=<?php echo (int)($_GET['did'] ?? 0);?>" class="btn-back">← Back to village</a>
|
||||
<button type="submit" class="btn-save">Save Changes</button>
|
||||
<a href="../Admin/admin.php?p=village&did=<?php echo (int)($_GET['did'] ?? 0);?>" class="btn-back"><?php echo ADM_BACK_TO_VILLAGE_2; ?></a>
|
||||
<button type="submit" class="btn-save"><?php echo ADM_SAVE_CHANGES; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
@@ -150,11 +150,11 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_LANG ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_LANG_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="lang">
|
||||
<option value="en" <?php if ((defined('SERVER_LANG') ? SERVER_LANG : LANG)=="en") echo "selected";?>>English</option>
|
||||
<option value="fr" <?php if ((defined('SERVER_LANG') ? SERVER_LANG : LANG)=="fr") echo "selected";?>>French</option>
|
||||
<option value="it" <?php if ((defined('SERVER_LANG') ? SERVER_LANG : LANG)=="it") echo "selected";?>>Italian</option>
|
||||
<option value="ro" <?php if ((defined('SERVER_LANG') ? SERVER_LANG : LANG)=="ro") echo "selected";?>>Romanian</option>
|
||||
<option value="zh" <?php if ((defined('SERVER_LANG') ? SERVER_LANG : LANG)=="zh") echo "selected";?>>Chinese</option>
|
||||
<option value="en" <?php if ((defined('SERVER_LANG') ? SERVER_LANG : LANG)=="en") echo "selected";?>><?php echo ADM_ENGLISH; ?></option>
|
||||
<option value="fr" <?php if ((defined('SERVER_LANG') ? SERVER_LANG : LANG)=="fr") echo "selected";?>><?php echo ADM_FRENCH; ?></option>
|
||||
<option value="it" <?php if ((defined('SERVER_LANG') ? SERVER_LANG : LANG)=="it") echo "selected";?>><?php echo ADM_ITALIAN; ?></option>
|
||||
<option value="ro" <?php if ((defined('SERVER_LANG') ? SERVER_LANG : LANG)=="ro") echo "selected";?>><?php echo ADM_ROMANIAN; ?></option>
|
||||
<option value="zh" <?php if ((defined('SERVER_LANG') ? SERVER_LANG : LANG)=="zh") echo "selected";?>><?php echo ADM_CHINESE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -210,8 +210,8 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_VILLEXPSPEED ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_VILLEXPSPEED_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="village_expand">
|
||||
<option value="1" <?php if (CP=="1") echo "selected";?>>Slow</option>
|
||||
<option value="0" <?php if (CP=="0") echo "selected";?>>Fast</option>
|
||||
<option value="1" <?php if (CP=="1") echo "selected";?>><?php echo ADM_SLOW; ?></option>
|
||||
<option value="0" <?php if (CP=="0") echo "selected";?>><?php echo ADM_FAST; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -219,16 +219,16 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_BEGINPROTECT ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_BEGINPROTECT_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="beginner">
|
||||
<option value="7200" <?php if (PROTECTION=="7200") echo "selected";?>>2 hours</option>
|
||||
<option value="10800" <?php if (PROTECTION=="10800") echo "selected";?>>3 hours</option>
|
||||
<option value="18000" <?php if (PROTECTION=="18000") echo "selected";?>>5 hours</option>
|
||||
<option value="28800" <?php if (PROTECTION=="28800") echo "selected";?>>8 hours</option>
|
||||
<option value="36000" <?php if (PROTECTION=="36000") echo "selected";?>>10 hours</option>
|
||||
<option value="43200" <?php if (PROTECTION=="43200") echo "selected";?>>12 hours</option>
|
||||
<option value="86400" <?php if (PROTECTION=="86400") echo "selected";?>>24 hours (1 day)</option>
|
||||
<option value="172800" <?php if (PROTECTION=="172800") echo "selected";?>>48 hours (2 days)</option>
|
||||
<option value="259200" <?php if (PROTECTION=="259200") echo "selected";?>>72 hours (3 days)</option>
|
||||
<option value="432000" <?php if (PROTECTION=="432000") echo "selected";?>>120 hours (5 days)</option>
|
||||
<option value="7200" <?php if (PROTECTION=="7200") echo "selected";?>><?php echo ADM_2_HOURS; ?></option>
|
||||
<option value="10800" <?php if (PROTECTION=="10800") echo "selected";?>><?php echo ADM_3_HOURS; ?></option>
|
||||
<option value="18000" <?php if (PROTECTION=="18000") echo "selected";?>><?php echo ADM_5_HOURS; ?></option>
|
||||
<option value="28800" <?php if (PROTECTION=="28800") echo "selected";?>><?php echo ADM_8_HOURS; ?></option>
|
||||
<option value="36000" <?php if (PROTECTION=="36000") echo "selected";?>><?php echo ADM_10_HOURS; ?></option>
|
||||
<option value="43200" <?php if (PROTECTION=="43200") echo "selected";?>><?php echo ADM_12_HOURS; ?></option>
|
||||
<option value="86400" <?php if (PROTECTION=="86400") echo "selected";?>><?php echo ADM_24_HOURS_1_DAY; ?></option>
|
||||
<option value="172800" <?php if (PROTECTION=="172800") echo "selected";?>><?php echo ADM_48_HOURS_2_DAYS; ?></option>
|
||||
<option value="259200" <?php if (PROTECTION=="259200") echo "selected";?>><?php echo ADM_72_HOURS_3_DAYS; ?></option>
|
||||
<option value="432000" <?php if (PROTECTION=="432000") echo "selected";?>><?php echo ADM_120_HOURS_5_DAYS; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -236,8 +236,8 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_REGOPEN ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_REGOPEN_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="reg_open">
|
||||
<option value="True" <?php if(REG_OPEN==true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(REG_OPEN==false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(REG_OPEN==true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(REG_OPEN==false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -245,8 +245,8 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_ACTIVMAIL ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_ACTIVMAIL_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="activate">
|
||||
<option value="true" <?php if (AUTH_EMAIL==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if (AUTH_EMAIL==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if (AUTH_EMAIL==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if (AUTH_EMAIL==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -254,8 +254,8 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_QUEST ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_QUEST_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="quest">
|
||||
<option value="true" <?php if(QUEST == true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if(QUEST == false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if(QUEST == true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if(QUEST == false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -263,8 +263,8 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_QTYPE ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_QTYPE_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="qtype">
|
||||
<option value="25" <?php if(QTYPE == 25) echo "selected";?>>Travian Official</option>
|
||||
<option value="37" <?php if(QTYPE == 37) echo "selected";?>>TravianZ Extended</option>
|
||||
<option value="25" <?php if(QTYPE == 25) echo "selected";?>><?php echo ADM_TRAVIAN_OFFICIAL; ?></option>
|
||||
<option value="37" <?php if(QTYPE == 37) echo "selected";?>><?php echo ADM_TRAVIANZ_EXTENDED; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -273,7 +273,7 @@ function refresh(tz) {
|
||||
<td>
|
||||
<select name="demolish">
|
||||
<option value="5" <?php if(DEMOLISH_LEVEL_REQ == "5") echo "selected";?>>5</option>
|
||||
<option value="10" <?php if(DEMOLISH_LEVEL_REQ == "10") echo "selected";?>>10 - Default</option>
|
||||
<option value="10" <?php if(DEMOLISH_LEVEL_REQ == "10") echo "selected";?>><?php echo ADM_10_DEFAULT; ?></option>
|
||||
<option value="15" <?php if(DEMOLISH_LEVEL_REQ == "15") echo "selected";?>>15</option>
|
||||
<option value="20" <?php if(DEMOLISH_LEVEL_REQ == "20") echo "selected";?>>20</option>
|
||||
</select>
|
||||
@@ -283,8 +283,8 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_WWSTATS ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_WWSTATS_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="ww">
|
||||
<option value="True" <?php if(WW == true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(WW == false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(WW == true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(WW == false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -292,15 +292,15 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_NTRTIME ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_NTRTIME_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="nature_regtime">
|
||||
<option value="28800" <?php if(NATURE_REGTIME == 28800) echo "selected";?>>8 hours</option>
|
||||
<option value="36000" <?php if(NATURE_REGTIME == 36000) echo "selected";?>>10 hours</option>
|
||||
<option value="43200" <?php if(NATURE_REGTIME == 43200) echo "selected";?>>12 hours</option>
|
||||
<option value="57600" <?php if(NATURE_REGTIME == 57600) echo "selected";?>>16 hours</option>
|
||||
<option value="72000" <?php if(NATURE_REGTIME == 72000) echo "selected";?>>20 hours</option>
|
||||
<option value="86400" <?php if(NATURE_REGTIME == 86400) echo "selected";?>>24 hours (1 day)</option>
|
||||
<option value="172800" <?php if(NATURE_REGTIME == 172800) echo "selected";?>>48 hours (2 days)</option>
|
||||
<option value="259200" <?php if(NATURE_REGTIME == 259200) echo "selected";?>>72 hours (3 days)</option>
|
||||
<option value="432000" <?php if(NATURE_REGTIME == 432000) echo "selected";?>>120 hours (5 days)</option>
|
||||
<option value="28800" <?php if(NATURE_REGTIME == 28800) echo "selected";?>><?php echo ADM_8_HOURS; ?></option>
|
||||
<option value="36000" <?php if(NATURE_REGTIME == 36000) echo "selected";?>><?php echo ADM_10_HOURS; ?></option>
|
||||
<option value="43200" <?php if(NATURE_REGTIME == 43200) echo "selected";?>><?php echo ADM_12_HOURS; ?></option>
|
||||
<option value="57600" <?php if(NATURE_REGTIME == 57600) echo "selected";?>><?php echo ADM_16_HOURS; ?></option>
|
||||
<option value="72000" <?php if(NATURE_REGTIME == 72000) echo "selected";?>><?php echo ADM_20_HOURS; ?></option>
|
||||
<option value="86400" <?php if(NATURE_REGTIME == 86400) echo "selected";?>><?php echo ADM_24_HOURS_1_DAY; ?></option>
|
||||
<option value="172800" <?php if(NATURE_REGTIME == 172800) echo "selected";?>><?php echo ADM_48_HOURS_2_DAYS; ?></option>
|
||||
<option value="259200" <?php if(NATURE_REGTIME == 259200) echo "selected";?>><?php echo ADM_72_HOURS_3_DAYS; ?></option>
|
||||
<option value="432000" <?php if(NATURE_REGTIME == 432000) echo "selected";?>><?php echo ADM_120_HOURS_5_DAYS; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -324,14 +324,14 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_MEDALINTERVAL ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_MEDALINTERVAL_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="medalinterval">
|
||||
<option value="0" <?php if(MEDALINTERVAL==0) echo "selected";?>>none</option>
|
||||
<option value="(3600*24)" <?php if(MEDALINTERVAL==86400) echo "selected";?>>1 day</option>
|
||||
<option value="(3600*24*2)" <?php if(MEDALINTERVAL==172800) echo "selected";?>>2 days</option>
|
||||
<option value="(3600*24*3)" <?php if(MEDALINTERVAL==259200) echo "selected";?>>3 days</option>
|
||||
<option value="(3600*24*4)" <?php if(MEDALINTERVAL==345600) echo "selected";?>>4 days</option>
|
||||
<option value="(3600*24*5)" <?php if(MEDALINTERVAL==432000) echo "selected";?>>5 days</option>
|
||||
<option value="(3600*24*6)" <?php if(MEDALINTERVAL==518400) echo "selected";?>>6 days</option>
|
||||
<option value="(3600*24*7)" <?php if(MEDALINTERVAL==604800) echo "selected";?>>7 days</option>
|
||||
<option value="0" <?php if(MEDALINTERVAL==0) echo "selected";?>><?php echo ADM_NONE; ?></option>
|
||||
<option value="(3600*24)" <?php if(MEDALINTERVAL==86400) echo "selected";?>><?php echo ADM_1_DAY; ?></option>
|
||||
<option value="(3600*24*2)" <?php if(MEDALINTERVAL==172800) echo "selected";?>><?php echo ADM_2_DAYS; ?></option>
|
||||
<option value="(3600*24*3)" <?php if(MEDALINTERVAL==259200) echo "selected";?>><?php echo ADM_3_DAYS; ?></option>
|
||||
<option value="(3600*24*4)" <?php if(MEDALINTERVAL==345600) echo "selected";?>><?php echo ADM_4_DAYS; ?></option>
|
||||
<option value="(3600*24*5)" <?php if(MEDALINTERVAL==432000) echo "selected";?>><?php echo ADM_5_DAYS; ?></option>
|
||||
<option value="(3600*24*6)" <?php if(MEDALINTERVAL==518400) echo "selected";?>><?php echo ADM_6_DAYS; ?></option>
|
||||
<option value="(3600*24*7)" <?php if(MEDALINTERVAL==604800) echo "selected";?>><?php echo ADM_7_DAYS; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -343,8 +343,8 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_GWORKSHOP ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_GWORKSHOP_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="great_wks">
|
||||
<option value="True" <?php if(GREAT_WKS==true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(GREAT_WKS==false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(GREAT_WKS==true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(GREAT_WKS==false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -352,8 +352,8 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_NATARSTAT ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_NATARSTAT_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="show_natars">
|
||||
<option value="True" <?php if(SHOW_NATARS==true) echo "selected";?>>True</option>
|
||||
<option value="False" <?php if(SHOW_NATARS==false) echo "selected";?>>False</option>
|
||||
<option value="True" <?php if(SHOW_NATARS==true) echo "selected";?>><?php echo ADM_TRUE; ?></option>
|
||||
<option value="False" <?php if(SHOW_NATARS==false) echo "selected";?>><?php echo ADM_FALSE; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -361,11 +361,11 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_PEACESYST ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_PEACESYST_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="peace">
|
||||
<option value="0" <?php if(PEACE==0) echo "selected";?>>None</option>
|
||||
<option value="1" <?php if(PEACE==1) echo "selected";?>>Normal</option>
|
||||
<option value="2" <?php if(PEACE==2) echo "selected";?>>Christmas</option>
|
||||
<option value="3" <?php if(PEACE==3) echo "selected";?>>New Year</option>
|
||||
<option value="4" <?php if(PEACE==4) echo "selected";?>>Easter</option>
|
||||
<option value="0" <?php if(PEACE==0) echo "selected";?>><?php echo ADM_NONE_2; ?></option>
|
||||
<option value="1" <?php if(PEACE==1) echo "selected";?>><?php echo ADM_NORMAL; ?></option>
|
||||
<option value="2" <?php if(PEACE==2) echo "selected";?>><?php echo ADM_CHRISTMAS; ?></option>
|
||||
<option value="3" <?php if(PEACE==3) echo "selected";?>><?php echo ADM_NEW_YEAR; ?></option>
|
||||
<option value="4" <?php if(PEACE==4) echo "selected";?>><?php echo ADM_EASTER; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -373,8 +373,8 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_GRAPHICPACK ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_GRAPHICPACK_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="gpack">
|
||||
<option value="true" <?php if(GP_ENABLE==true) echo "selected";?>>Yes</option>
|
||||
<option value="false" <?php if(GP_ENABLE==false) echo "selected";?>>No</option>
|
||||
<option value="true" <?php if(GP_ENABLE==true) echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="false" <?php if(GP_ENABLE==false) echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -382,38 +382,29 @@ function refresh(tz) {
|
||||
<td class="b"><?php echo CONF_SERV_ERRORREPORT ?> <em class="tooltip">?<span class="classic"><?php echo CONF_SERV_ERRORREPORT_TOOLTIP ?></span></em></td>
|
||||
<td>
|
||||
<select name="error">
|
||||
<option value="error_reporting (E_ALL ^ E_NOTICE);" <?php if(ERROR_REPORT=="error_reporting (E_ALL ^ E_NOTICE);") echo "selected";?>>Yes</option>
|
||||
<option value="error_reporting (0);" <?php if(ERROR_REPORT=="error_reporting (0);") echo "selected";?>>No</option>
|
||||
<option value="error_reporting (E_ALL ^ E_NOTICE);" <?php if(ERROR_REPORT=="error_reporting (E_ALL ^ E_NOTICE);") echo "selected";?>><?php echo ADM_YES; ?></option>
|
||||
<option value="error_reporting (0);" <?php if(ERROR_REPORT=="error_reporting (0);") echo "selected";?>><?php echo ADM_NO; ?></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Hero base regeneration <em class="tooltip">?<span class="classic">Hit points the hero recovers per day on top of the points invested in the regeneration attribute and any equipped items. Without it, a hero with no regeneration points would never heal and would eventually die on adventures. Scales with server speed. 0 disables it.</span></em></td>
|
||||
<td class="b"><?php echo ADM_HERO_BASE_REGENERATION; ?><em class="tooltip">?<span class="classic"><?php echo ADM_HIT_POINTS_THE_HERO_RECOVERS_PER_DAY_ON_TOP; ?></span></em></td>
|
||||
<td>
|
||||
<input type="number" name="hero_base_regen" min="0" max="100" style="width:90px"
|
||||
value="<?php echo defined('HERO_BASE_REGEN') ? (int) HERO_BASE_REGEN : 10; ?>"> HP / day
|
||||
</td>
|
||||
value="<?php echo defined('HERO_BASE_REGEN') ? (int) HERO_BASE_REGEN : 10; ?>"><?php echo ADM_HP_DAY; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Hero exchange rates <em class="tooltip">?<span class="classic">Exchange office in the auction house. Keep the second value higher than the first, otherwise players could trade back and forth to create gold out of nothing.</span></em></td>
|
||||
<td>
|
||||
1 gold →
|
||||
<input type="number" name="hero_silver_per_gold" min="1" max="10000" style="width:80px"
|
||||
value="<?php echo defined('HERO_SILVER_PER_GOLD') ? (int) HERO_SILVER_PER_GOLD : 10; ?>"> silver
|
||||
|
|
||||
<input type="number" name="hero_silver_to_gold" min="1" max="10000" style="width:80px"
|
||||
value="<?php echo defined('HERO_SILVER_TO_GOLD') ? (int) HERO_SILVER_TO_GOLD : 25; ?>"> silver → 1 gold
|
||||
</td>
|
||||
<td class="b"><?php echo ADM_HERO_EXCHANGE_RATES; ?><em class="tooltip">?<span class="classic"><?php echo ADM_EXCHANGE_OFFICE_IN_THE_AUCTION_HOUSE_KEEP_TH; ?></span></em></td>
|
||||
<td><?php echo ADM_1_GOLD; ?><input type="number" name="hero_silver_per_gold" min="1" max="10000" style="width:80px"
|
||||
value="<?php echo defined('HERO_SILVER_PER_GOLD') ? (int) HERO_SILVER_PER_GOLD : 10; ?>"><?php echo ADM_SILVER_2; ?><input type="number" name="hero_silver_to_gold" min="1" max="10000" style="width:80px"
|
||||
value="<?php echo defined('HERO_SILVER_TO_GOLD') ? (int) HERO_SILVER_TO_GOLD : 25; ?>"><?php echo ADM_SILVER_1_GOLD; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="b">Hero resource production <em class="tooltip">?<span class="classic">Hourly resources per point invested in the hero's Resources attribute. The first value applies when the player spreads the bonus over all four resources, the second when it is concentrated on a single one. Both scale with server speed.</span></em></td>
|
||||
<td class="b"><?php echo ADM_HERO_RESOURCE_PRODUCTION; ?><em class="tooltip">?<span class="classic"><?php echo ADM_HOURLY_RESOURCES_PER_POINT_INVESTED_IN_THE_H; ?></span></em></td>
|
||||
<td>
|
||||
<input type="number" name="hero_res_all" min="0" max="10000" style="width:80px"
|
||||
value="<?php echo defined('HERO_RES_PER_POINT_ALL') ? (int) HERO_RES_PER_POINT_ALL : 3; ?>"> of each
|
||||
|
|
||||
<input type="number" name="hero_res_one" min="0" max="10000" style="width:80px"
|
||||
value="<?php echo defined('HERO_RES_PER_POINT_ONE') ? (int) HERO_RES_PER_POINT_ONE : 10; ?>"> of one type
|
||||
</td>
|
||||
value="<?php echo defined('HERO_RES_PER_POINT_ALL') ? (int) HERO_RES_PER_POINT_ALL : 3; ?>"><?php echo ADM_OF_EACH; ?><input type="number" name="hero_res_one" min="0" max="10000" style="width:80px"
|
||||
value="<?php echo defined('HERO_RES_PER_POINT_ONE') ? (int) HERO_RES_PER_POINT_ONE : 10; ?>"><?php echo ADM_OF_ONE_TYPE; ?></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -426,9 +417,7 @@ function refresh(tz) {
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
||||
<path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/>
|
||||
<polyline points="17 21 17 13 7 13 7 21"/>
|
||||
</svg>
|
||||
SAVE
|
||||
</button>
|
||||
</svg><?php echo ADM_SAVE; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@@ -63,7 +63,7 @@ function clearSitter(n){ document.getElementById('sit'+n).value = '0'; }
|
||||
<div class="sit-head">
|
||||
<div class="icon">👥</div>
|
||||
<div>
|
||||
<h2>Edit Sitters: <a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<h2><?php echo ADM_EDIT_SITTERS; ?><a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<div class="sub">UID: <?php echo $uid; ?></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -75,13 +75,13 @@ function clearSitter(n){ document.getElementById('sit'+n).value = '0'; }
|
||||
<input type="hidden" name="id" value="<?php echo $id; ?>">
|
||||
|
||||
<div class="card">
|
||||
<h3>⚙️ Sitter Settings</h3>
|
||||
<h3><?php echo ADM_SITTER_SETTINGS; ?></h3>
|
||||
<div class="body">
|
||||
<div class="info">💡 Use the player's UID. Enter <b>0</b> to delete the sitter. You can find the UID in Search.</div>
|
||||
<div class="info"><?php echo ADM_USE_THE_PLAYER_S_UID_ENTER; ?><b>0</b><?php echo ADM_TO_DELETE_THE_SITTER_YOU_CAN_FIND_THE_UID_IN; ?></div>
|
||||
|
||||
<div class="sitter-grid">
|
||||
<div class="sitter-box">
|
||||
<h4>👤 Sitter 1</h4>
|
||||
<h4><?php echo ADM_SITTER_1; ?></h4>
|
||||
<input type="number" id="sit1" name="sitter1" value="<?php echo (int)$user['sit1']; ?>" min="0">
|
||||
<div class="sitter-current <?php echo $sitter1 ? '' : 'none'; ?>">
|
||||
<?php if($sitter1){ echo '→ <a href="admin.php?p=player&uid='.$sitter1['id'].'">'.htmlspecialchars($sitter1['username']).'</a> (UID '.$sitter1['id'].')'; } else { echo 'No Sitter'; } ?>
|
||||
@@ -90,7 +90,7 @@ function clearSitter(n){ document.getElementById('sit'+n).value = '0'; }
|
||||
</div>
|
||||
|
||||
<div class="sitter-box">
|
||||
<h4>👤 Sitter 2</h4>
|
||||
<h4><?php echo ADM_SITTER_2; ?></h4>
|
||||
<input type="number" id="sit2" name="sitter2" value="<?php echo (int)$user['sit2']; ?>" min="0">
|
||||
<div class="sitter-current <?php echo $sitter2 ? '' : 'none'; ?>">
|
||||
<?php if($sitter2){ echo '→ <a href="admin.php?p=player&uid='.$sitter2['id'].'">'.htmlspecialchars($sitter2['username']).'</a> (UID '.$sitter2['id'].')'; } else { echo 'No Sitter'; } ?>
|
||||
@@ -102,8 +102,8 @@ function clearSitter(n){ document.getElementById('sit'+n).value = '0'; }
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back">← Back</a>
|
||||
<button type="submit" class="btn-save">💾 Save Sitters</button>
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back"><?php echo ADM_BACK; ?></a>
|
||||
<button type="submit" class="btn-save"><?php echo ADM_SAVE_SITTERS; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -71,14 +71,14 @@ select.dropdown { width:100%; }
|
||||
|
||||
<div class="editUser-wrap">
|
||||
<div class="editUser-head">
|
||||
<h2>✏️ Edit Player: <a href="admin.php?p=player&uid=<?php echo $user['id']; ?>"><?php echo htmlspecialchars($user['username']); ?></a></h2>
|
||||
<h2><?php echo ADM_EDIT_PLAYER; ?><a href="admin.php?p=player&uid=<?php echo $user['id']; ?>"><?php echo htmlspecialchars($user['username']); ?></a></h2>
|
||||
<div class="meta">ID: <?php echo $id; ?> | Villages: <?php echo count($varray); ?> | Gold: <?php echo $user['gold']; ?> <img src="../img/x.gif" class="gold" style="vertical-align:-2px;"></div>
|
||||
</div>
|
||||
|
||||
<div class="editUser-grid">
|
||||
<!-- LEFT: DETAILS -->
|
||||
<div class="card">
|
||||
<h3>👤 Account Details</h3>
|
||||
<h3><?php echo ADM_ACCOUNT_DETAILS; ?></h3>
|
||||
<div class="body">
|
||||
|
||||
<!-- USERNAME EDIT - NOU -->
|
||||
@@ -88,9 +88,9 @@ select.dropdown { width:100%; }
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
|
||||
<input type="hidden" name="uid" value="<?php echo $uid; ?>">
|
||||
<div class="form-row">
|
||||
<label>👤 Username</label>
|
||||
<label><?php echo ADM_USERNAME_2; ?></label>
|
||||
<input class="fm" name="username" value="<?php echo htmlspecialchars($user['username']); ?>" style="flex:1;">
|
||||
<button type="submit" class="btn-mini" title="Change Username">💾 Save</button>
|
||||
<button type="submit" class="btn-mini" title="<?php echo ADM_CHANGE_USERNAME; ?>"><?php echo ADM_SAVE_2; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@@ -103,34 +103,34 @@ select.dropdown { width:100%; }
|
||||
<input type="hidden" name="id" value="<?php echo $id; ?>" />
|
||||
|
||||
<div class="form-row">
|
||||
<label> ⚔️ Tribe</label>
|
||||
<label><?php echo ADM_TRIBE_2; ?></label>
|
||||
<select name="tribe" class="dropdown">
|
||||
<option value="1" <?php if($user['tribe']==1)echo"selected"; ?>>1. Roman</option>
|
||||
<option value="2" <?php if($user['tribe']==2)echo"selected"; ?>>2. Teuton</option>
|
||||
<option value="3" <?php if($user['tribe']==3)echo"selected"; ?>>3. Gaul</option>
|
||||
<option value="4" <?php if($user['tribe']==4)echo"selected"; ?>>4. Nature</option>
|
||||
<option value="5" <?php if($user['tribe']==5)echo"selected"; ?>>5. Natars</option>
|
||||
<option value="6" <?php if($user['tribe']==6)echo"selected"; ?>>6. Hun</option>
|
||||
<option value="7" <?php if($user['tribe']==7)echo"selected"; ?>>7. Egyptian</option>
|
||||
<option value="8" <?php if($user['tribe']==8)echo"selected"; ?>>8. Spartan</option>
|
||||
<option value="9" <?php if($user['tribe']==9)echo"selected"; ?>>9. Viking</option>
|
||||
<option value="1" <?php if($user['tribe']==1)echo"selected"; ?>><?php echo ADM_1_ROMAN; ?></option>
|
||||
<option value="2" <?php if($user['tribe']==2)echo"selected"; ?>><?php echo ADM_2_TEUTON; ?></option>
|
||||
<option value="3" <?php if($user['tribe']==3)echo"selected"; ?>><?php echo ADM_3_GAUL; ?></option>
|
||||
<option value="4" <?php if($user['tribe']==4)echo"selected"; ?>><?php echo ADM_4_NATURE; ?></option>
|
||||
<option value="5" <?php if($user['tribe']==5)echo"selected"; ?>><?php echo ADM_5_NATARS; ?></option>
|
||||
<option value="6" <?php if($user['tribe']==6)echo"selected"; ?>><?php echo ADM_6_HUN; ?></option>
|
||||
<option value="7" <?php if($user['tribe']==7)echo"selected"; ?>><?php echo ADM_7_EGYPTIAN; ?></option>
|
||||
<option value="8" <?php if($user['tribe']==8)echo"selected"; ?>><?php echo ADM_8_SPARTAN; ?></option>
|
||||
<option value="9" <?php if($user['tribe']==9)echo"selected"; ?>><?php echo ADM_9_VIKING; ?></option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<label>📍 Location</label>
|
||||
<label><?php echo ADM_LOCATION; ?></label>
|
||||
<input class="fm" name="location" value="<?php echo htmlspecialchars($user['location']); ?>">
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<label>✉️ E-mail</label>
|
||||
<label><?php echo ADM_E_MAIL; ?></label>
|
||||
<input class="fm" name="email" value="<?php echo htmlspecialchars($user['email']); ?>">
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<label>🎯 Quest</label>
|
||||
<label><?php echo ADM_QUEST; ?></label>
|
||||
<input class="fm" name="quest" value="<?php echo (int)$user['quest']; ?>">
|
||||
</div>
|
||||
|
||||
<div style="margin-top:14px; border-top:1px dashed #ddd; padding-top:10px;">
|
||||
<label style="font-weight:bold; font-size:12px; display:block; margin-bottom:4px;">📝 Profile Description (left)</label>
|
||||
<label style="font-weight:bold; font-size:12px; display:block; margin-bottom:4px;"><?php echo ADM_PROFILE_DESCRIPTION_LEFT; ?></label>
|
||||
<div class="desc-box">
|
||||
<textarea name="desc1" rows="10"><?php echo htmlspecialchars($user['desc1']); ?></textarea>
|
||||
</div>
|
||||
@@ -141,25 +141,25 @@ select.dropdown { width:100%; }
|
||||
|
||||
<!-- RIGHT: DESCRIPTION -->
|
||||
<div class="card">
|
||||
<h3>📄 Profile Description (right)</h3>
|
||||
<h3><?php echo ADM_PROFILE_DESCRIPTION_RIGHT; ?></h3>
|
||||
<div class="body desc-box">
|
||||
<textarea name="desc2" rows="22"><?php echo htmlspecialchars($user['desc2']); ?></textarea>
|
||||
<div style="font-size:11px; color:#777; margin-top:4px;">Suport BBCode. Folosește Enter pentru linii noi.</div>
|
||||
<div style="font-size:11px; color:#777; margin-top:4px;"><?php echo ADM_SUPORT_BBCODE_FOLOSE_TE_ENTER_PENTRU_LINII_N; ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- MEDALS -->
|
||||
<div class="card" style="margin-top:12px;">
|
||||
<h3>🏅 Medals</h3>
|
||||
<h3><?php echo ADM_MEDALS; ?></h3>
|
||||
<div class="body" style="padding:0;">
|
||||
<table class="medals-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width:35%;">Category</th>
|
||||
<th style="width:15%;">Rank</th>
|
||||
<th style="width:15%;">Week</th>
|
||||
<th>BB-Code</th>
|
||||
<th style="width:35%;"><?php echo ADM_CATEGORY; ?></th>
|
||||
<th style="width:15%;"><?php echo ADM_RANK; ?></th>
|
||||
<th style="width:15%;"><?php echo ADM_WEEK; ?></th>
|
||||
<th><?php echo ADM_BB_CODE; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -181,7 +181,7 @@ select.dropdown { width:100%; }
|
||||
}
|
||||
?>
|
||||
<tr>
|
||||
<td><span class="badge" style="background:#999;">🔰</span> Beginners Protection</td>
|
||||
<td><span class="badge" style="background:#999;">🔰</span><?php echo ADM_BEGINNERS_PROTECTION; ?></td>
|
||||
<td>-</td><td>-</td><td><code>[#0]</code></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@@ -191,8 +191,8 @@ select.dropdown { width:100%; }
|
||||
|
||||
<div class="actions">
|
||||
</form> <!-- închidem form-ul principal aici -->
|
||||
<button type="submit" form="dummy" onclick="document.querySelector('form[action*=\'editUser.php\']').submit()" class="btn-save">💾 Save Changes</button>
|
||||
<span class="back-link"><a href="?p=player&uid=<?php echo $user['id']; ?>">« Go back to player</a></span>
|
||||
<button type="submit" form="dummy" onclick="document.querySelector('form[action*=\'editUser.php\']').submit()" class="btn-save"><?php echo ADM_SAVE_CHANGES_2; ?></button>
|
||||
<span class="back-link"><a href="?p=player&uid=<?php echo $user['id']; ?>"><?php echo ADM_GO_BACK_TO_PLAYER; ?></a></span>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
|
||||
@@ -51,13 +51,13 @@ if(isset($id)) { include("search2.tpl"); ?>
|
||||
|
||||
<div class="vcard">
|
||||
<div class="vhead">Edit Village – <?php echo htmlspecialchars($village['name']); ?> (<?php echo $coor['x'].'|'.$coor['y']; ?>)
|
||||
<a class="instr-link" onclick="document.getElementById('instr').style.display = document.getElementById('instr').style.display=='none'?'block':'none';return false">Show Instructions</a>
|
||||
<a class="instr-link" onclick="document.getElementById('instr').style.display = document.getElementById('instr').style.display=='none'?'block':'none';return false"><?php echo ADM_SHOW_INSTRUCTIONS; ?></a>
|
||||
</div>
|
||||
<div id="instr" style="display:none;padding:12px;background:#fcfcfd;border-bottom:1px solid #e5e7eb">
|
||||
<div style="display:flex;flex-direction:column;gap:24px;align-items:center">
|
||||
|
||||
<div style="text-align:center">
|
||||
<h4 style="margin:0 8px;font-size:12px;color:#475569">Resource Fields (1-18)</h4>
|
||||
<h4 style="margin:0 8px;font-size:12px;color:#475569"><?php echo ADM_RESOURCE_FIELDS_1_18; ?></h4>
|
||||
<div id="content" class="village1" style="min-height:auto">
|
||||
<div id="village_map" class="f<?php echo $type; ?>" style="margin:0 auto;float:none">
|
||||
<?php for($f=1;$f<19;$f++) echo '<img src="../img/x.gif" class="reslevel rf'.$f.' level'.$f.'">'; ?>
|
||||
@@ -66,7 +66,7 @@ if(isset($id)) { include("search2.tpl"); ?>
|
||||
</div>
|
||||
|
||||
<div style="text-align:center">
|
||||
<h4 style="margin:0 0 8px;font-size:12px;color:#475569">Village Center (19-38)</h4>
|
||||
<h4 style="margin:0 0 8px;font-size:12px;color:#475569"><?php echo ADM_VILLAGE_CENTER_19_38; ?></h4>
|
||||
<div id="content" class="village2" style="padding:0">
|
||||
<div id="village_map" class="d2_0" style="margin:0 auto;transform:scale(.85);transform-origin:top">
|
||||
<?php for($b=1;$b<21;$b++) echo '<img src="../img/x.gif" class="building d'.$b.' iso">'; ?>
|
||||
@@ -79,7 +79,7 @@ if(isset($id)) { include("search2.tpl"); ?>
|
||||
<!-- tabelul cu GID rămâne sub ele -->
|
||||
<div style="margin-top:10px;max-height:180px;overflow:auto;border:1px solid #e5e7eb;border-radius:6px">
|
||||
<table class="vtable" style="font-size:11.5px">
|
||||
<thead><tr><th style="width:50px">GID</th><th>Name</th></tr></thead>
|
||||
<thead><tr><th style="width:50px"><?php echo ADM_GID; ?></th><th><?php echo ADM_NAME; ?></th></tr></thead>
|
||||
<tbody><?php for($i=1;$i<=50;$i++){ echo '<tr><td>'.$i.'</td><td>'.$funct->procResType($i).'</td></tr>'; } ?></tbody>
|
||||
</table>
|
||||
</div>
|
||||
@@ -87,10 +87,10 @@ if(isset($id)) { include("search2.tpl"); ?>
|
||||
</div>
|
||||
|
||||
<div class="vcard">
|
||||
<div class="vhead">Modify Buildings</div>
|
||||
<div class="vhead"><?php echo ADM_MODIFY_BUILDINGS; ?></div>
|
||||
<div style="overflow-x:auto">
|
||||
<table class="vtable">
|
||||
<thead><tr><th style="width:50px">ID</th><th style="width:70px">GID</th><th>Name</th><th style="width:70px">Level</th></tr></thead>
|
||||
<thead><tr><th style="width:50px"><?php echo ADM_ID; ?></th><th style="width:70px"><?php echo ADM_GID; ?></th><th><?php echo ADM_NAME; ?></th><th style="width:70px"><?php echo ADM_LEVEL_2; ?></th></tr></thead>
|
||||
<tbody>
|
||||
<?php
|
||||
for($i=1;$i<=41;$i++){
|
||||
@@ -109,18 +109,18 @@ if(isset($id)) { include("search2.tpl"); ?>
|
||||
</table>
|
||||
</div>
|
||||
<div style="text-align:center;padding:12px;border-top:1px solid #f1f5f9">
|
||||
<button type="submit" class="btn-save">Save Changes</button>
|
||||
<button type="submit" class="btn-save"><?php echo ADM_SAVE_CHANGES; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<div class="vcard">
|
||||
<div class="vhead">Current Layout Preview</div>
|
||||
<div class="vhead"><?php echo ADM_CURRENT_LAYOUT_PREVIEW; ?></div>
|
||||
<div style="padding:16px;display:flex;flex-direction:column;gap:28px;align-items:center">
|
||||
|
||||
<!-- 1. Resource Fields -->
|
||||
<div style="text-align:center">
|
||||
<div style="font-size:12px;font-weight:600;color:#475569;margin-bottom:8px">Resource Fields</div>
|
||||
<div style="font-size:12px;font-weight:600;color:#475569;margin-bottom:8px"><?php echo ADM_RESOURCE_FIELDS; ?></div>
|
||||
<div id="content" class="village1" style="min-height:auto">
|
||||
<div id="village_map" class="f<?php echo $type; ?>" style="float:none;margin:0 auto">
|
||||
<?php for($f=1;$f<19;$f++){ $level=$fdata['f'.$f]; echo '<img src="../img/x.gif" class="reslevel rf'.$f.' level'.$level.'">'; } ?>
|
||||
@@ -130,7 +130,7 @@ if(isset($id)) { include("search2.tpl"); ?>
|
||||
|
||||
<!-- 2. Village Center -->
|
||||
<div style="text-align:center">
|
||||
<div style="font-size:12px;font-weight:600;color:#475569;margin-bottom:8px">Village Center</div>
|
||||
<div style="font-size:12px;font-weight:600;color:#475569;margin-bottom:8px"><?php echo ADM_VILLAGE_CENTER; ?></div>
|
||||
<?php $WW=$fdata['f99t']; $wall=$fdata['f40t']; $wallGfx=[1=>'d2_11',2=>'d2_12',3=>'d2_1',6=>'d2_16',7=>'d2_17',8=>'d2_18',9=>'d2_19']; /* 6-9: bg16-bg19.jpg */ $wallType=$wall==0?'d2_0':($wallGfx[$user['tribe']] ?? 'd2_11'); ?>
|
||||
<div id="content" class="village2" style="padding:0">
|
||||
<div id="village_map" class="<?php echo $wallType; ?>" style="margin:0 auto;transform:scale(.9);transform-origin:top">
|
||||
|
||||
@@ -60,7 +60,7 @@ if($id){
|
||||
<div class="week-head">
|
||||
<div class="icon">📅</div>
|
||||
<div>
|
||||
<h2>Weekly Stats: <a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<h2><?php echo ADM_WEEKLY_STATS; ?><a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></h2>
|
||||
<div class="sub">UID: <?php echo $uid; ?> • Reset săptămânal</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -73,26 +73,26 @@ if($id){
|
||||
|
||||
<div class="card">
|
||||
<div class="body">
|
||||
<div class="info">📊 Acestea sunt punctele <b>din săptămâna curentă</b> pentru top 10. Se resetează automat.</div>
|
||||
<div class="info"><?php echo ADM_ACESTEA_SUNT_PUNCTELE; ?><b><?php echo ADM_DIN_S_PT_M_NA_CURENT; ?></b><?php echo ADM_PENTRU_TOP_10_SE_RESETEAZ_AUTOMAT; ?></div>
|
||||
|
||||
<div class="stats-grid">
|
||||
<div class="stat-box off">
|
||||
<div class="icon">⚔️</div>
|
||||
<div class="label">Attack</div>
|
||||
<div class="label"><?php echo ADM_ATTACK; ?></div>
|
||||
<div class="current">Now: <?php echo number_format($user['ap']); ?></div>
|
||||
<input type="number" name="off" value="<?php echo (int)$user['ap']; ?>" min="0">
|
||||
</div>
|
||||
|
||||
<div class="stat-box def">
|
||||
<div class="icon">🛡️</div>
|
||||
<div class="label">Defence</div>
|
||||
<div class="label"><?php echo ADM_DEFENCE_2; ?></div>
|
||||
<div class="current">Now: <?php echo number_format($user['dp']); ?></div>
|
||||
<input type="number" name="def" value="<?php echo (int)$user['dp']; ?>" min="0">
|
||||
</div>
|
||||
|
||||
<div class="stat-box raid">
|
||||
<div class="icon">💰</div>
|
||||
<div class="label">Raid</div>
|
||||
<div class="label"><?php echo ADM_RAID; ?></div>
|
||||
<div class="current">Now: <?php echo number_format($user['RR']); ?></div>
|
||||
<input type="number" name="res" value="<?php echo (int)$user['RR']; ?>" min="0">
|
||||
</div>
|
||||
@@ -101,8 +101,8 @@ if($id){
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back">← Back</a>
|
||||
<button type="submit" class="btn-save">💾 Save Week</button>
|
||||
<a href="admin.php?p=player&uid=<?php echo $uid;?>" class="btn-back"><?php echo ADM_BACK; ?></a>
|
||||
<button type="submit" class="btn-save"><?php echo ADM_SAVE_WEEK; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -44,29 +44,27 @@ $id = $_SESSION['id'];
|
||||
<div class="plus-wrap">
|
||||
<div class="plus-head">
|
||||
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 2l4 4-4 4-4-4 4-4zm0 8l4 4-4-4 4-4zm-8 4l4 4-4 4-4-4 4-4zm16 0l4 4-4 4-4-4 4-4z" fill="#8e44ad"/></svg>
|
||||
<h2>Plus Management</h2>
|
||||
<h2><?php echo ADM_PLUS_MANAGEMENT; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="plus-card">
|
||||
<div class="icon-big">
|
||||
<svg viewBox="0 0 24 24"><path d="M12 4v16M4 12h16" stroke="white" stroke-width="3" stroke-linecap="round"/></svg>
|
||||
</div>
|
||||
<h3>Give Everyone Free Plus</h3>
|
||||
<p>Activate Travian Plus for ALL players on the server.</p>
|
||||
<h3><?php echo ADM_GIVE_EVERYONE_FREE_PLUS; ?></h3>
|
||||
<p><?php echo ADM_ACTIVATE_TRAVIAN_PLUS_FOR_ALL_PLAYERS_ON_THE; ?></p>
|
||||
|
||||
<form action="../GameEngine/Admin/Mods/givePlus.php" method="POST" class="plus-form">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="admid" value="<?php echo $id; ?>">
|
||||
<input type="number" name="plus" value="1" min="1" max="365" required>
|
||||
<span>Days</span>
|
||||
<span><?php echo ADM_DAYS; ?></span>
|
||||
<button type="submit">
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M5 12h14M12 5l7 7-7 7" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg>
|
||||
Give Plus
|
||||
</button>
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M5 12h14M12 5l7 7-7 7" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg><?php echo ADM_GIVE_PLUS; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<?php if(isset($_GET['g'])){ ?>
|
||||
<div class="plus-success">✓ Plus has been successfully activated for all players!</div>
|
||||
<div class="plus-success"><?php echo ADM_PLUS_HAS_BEEN_SUCCESSFULLY_ACTIVATED_FOR_ALL; ?></div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
@@ -49,7 +49,7 @@ $id = $_SESSION['id'];
|
||||
<div class="resbonus-wrap">
|
||||
<div class="resbonus-head">
|
||||
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4 7h16v10H4z" fill="#27ae60"/><path d="M8 3v4M16 3v4" stroke="#16a085" stroke-width="2"/></svg>
|
||||
<h2>Resource Bonus</h2>
|
||||
<h2><?php echo ADM_RESOURCE_BONUS; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="resbonus-card">
|
||||
@@ -57,8 +57,8 @@ $id = $_SESSION['id'];
|
||||
<div class="icon-big">
|
||||
<svg viewBox="0 0 24 24"><path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"/></svg>
|
||||
</div>
|
||||
<h3>Give Everyone Resource Bonus</h3>
|
||||
<p>Activate a 25% bonus for all resources for ALL players.</p>
|
||||
<h3><?php echo ADM_GIVE_EVERYONE_RESOURCE_BONUS; ?></h3>
|
||||
<p><?php echo ADM_ACTIVATE_A_25_BONUS_FOR_ALL_RESOURCES_FOR_AL; ?></p>
|
||||
</div>
|
||||
|
||||
<form action="../GameEngine/Admin/Mods/givePlusRes.php" method="POST" class="resbonus-form">
|
||||
@@ -67,31 +67,29 @@ $id = $_SESSION['id'];
|
||||
|
||||
<div class="res-grid">
|
||||
<div class="res-item">
|
||||
<div class="left wood"><img src="../img/admin/r/1.gif" alt=""> Wood</div>
|
||||
<div><input type="number" name="wood" value="1" min="0" max="365"> days</div>
|
||||
<div class="left wood"><img src="../img/admin/r/1.gif" alt=""><?php echo ADM_WOOD; ?></div>
|
||||
<div><input type="number" name="wood" value="1" min="0" max="365"><?php echo ADM_DAYS_2; ?></div>
|
||||
</div>
|
||||
<div class="res-item">
|
||||
<div class="left clay"><img src="../img/admin/r/2.gif" alt=""> Clay</div>
|
||||
<div><input type="number" name="clay" value="1" min="0" max="365"> days</div>
|
||||
<div class="left clay"><img src="../img/admin/r/2.gif" alt=""><?php echo ADM_CLAY; ?></div>
|
||||
<div><input type="number" name="clay" value="1" min="0" max="365"><?php echo ADM_DAYS_2; ?></div>
|
||||
</div>
|
||||
<div class="res-item">
|
||||
<div class="left iron"><img src="../img/admin/r/3.gif" alt=""> Iron</div>
|
||||
<div><input type="number" name="iron" value="1" min="0" max="365"> days</div>
|
||||
<div class="left iron"><img src="../img/admin/r/3.gif" alt=""><?php echo ADM_IRON; ?></div>
|
||||
<div><input type="number" name="iron" value="1" min="0" max="365"><?php echo ADM_DAYS_2; ?></div>
|
||||
</div>
|
||||
<div class="res-item">
|
||||
<div class="left crop"><img src="../img/admin/r/4.gif" alt=""> Crop</div>
|
||||
<div><input type="number" name="crop" value="1" min="0" max="365"> days</div>
|
||||
<div class="left crop"><img src="../img/admin/r/4.gif" alt=""><?php echo ADM_CROP; ?></div>
|
||||
<div><input type="number" name="crop" value="1" min="0" max="365"><?php echo ADM_DAYS_2; ?></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<button type="submit">
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M5 12h14M12 5l7 7-7 7" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg>
|
||||
Give Resource Bonus
|
||||
</button>
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M5 12h14M12 5l7 7-7 7" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg><?php echo ADM_GIVE_RESOURCE_BONUS; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<?php if(isset($_GET['g'])){ ?>
|
||||
<div class="resbonus-success">✓ Resource bonuses have been activated for all players!</div>
|
||||
<div class="resbonus-success"><?php echo ADM_RESOURCE_BONUSES_HAVE_BEEN_ACTIVATED_FOR_ALL; ?></div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
@@ -41,28 +41,26 @@ $id = $_SESSION['id'];
|
||||
<div class="gold-wrap">
|
||||
<div class="gold-head">
|
||||
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="10" fill="#d4af37"/><path d="M12 7v10M9 10h6M9 14h6" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg>
|
||||
<h2>Gold Management</h2>
|
||||
<h2><?php echo ADM_GOLD_MANAGEMENT; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="gold-card">
|
||||
<div class="icon-big">
|
||||
<svg viewBox="0 0 24 24"><path d="M12 2L9 8H3l5 4-2 6 6-4 6 4-2-6 5-4h-6z"/></svg>
|
||||
</div>
|
||||
<h3>Give Everyone Free Gold</h3>
|
||||
<p>This gold will be added to ALL active players on the server.</p>
|
||||
<h3><?php echo ADM_GIVE_EVERYONE_FREE_GOLD; ?></h3>
|
||||
<p><?php echo ADM_THIS_GOLD_WILL_BE_ADDED_TO_ALL_ACTIVE_PLAYER; ?></p>
|
||||
|
||||
<form action="../GameEngine/Admin/Mods/gold.php" method="POST" class="gold-form">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="admid" value="<?php echo $id; ?>">
|
||||
<input type="number" name="gold" value="20" min="1" max="9999" required>
|
||||
<button type="submit">
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M5 12h14M12 5l7 7-7 7" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg>
|
||||
Give Gold
|
||||
</button>
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M5 12h14M12 5l7 7-7 7" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg><?php echo ADM_GIVE_GOLD; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<?php if(isset($_GET['g'])){ ?>
|
||||
<div class="gold-success">✓ Gold has been successfully added to all players!</div>
|
||||
<div class="gold-success"><?php echo ADM_GOLD_HAS_BEEN_SUCCESSFULLY_ADDED_TO_ALL_PLAY; ?></div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
@@ -67,68 +67,62 @@ $msg = isset($_GET['msg']) ? (string)$_GET['msg'] : '';
|
||||
</style>
|
||||
|
||||
<div class="gs-wrap">
|
||||
<h2>Gold <span>Shop & Promo Codes</span></h2>
|
||||
<p class="gs-intro">
|
||||
Create promo / voucher codes players redeem for gold on the Plus page. Set a fixed
|
||||
gold amount, an optional total use-limit, whether each player may redeem it once,
|
||||
and an optional expiry. For a one-off bug-hunter reward, create a code with
|
||||
max-uses 1 — or use
|
||||
<a href="admin.php?p=usergold" style="color:#93c5fd;">Give Free Gold To Specific User</a> directly.
|
||||
</p>
|
||||
<h2><?php echo ADMIN_GOLD; ?><span><?php echo ADM_SHOP_PROMO_CODES; ?></span></h2>
|
||||
<p class="gs-intro"><?php echo ADM_CREATE_PROMO_VOUCHER_CODES_PLAYERS_REDEEM_FO; ?><a href="admin.php?p=usergold" style="color:#93c5fd;"><?php echo ADMIN_GIVE_FREE_GOLD_TO_SPECIFIC_USER; ?></a><?php echo ADM_DIRECTLY; ?></p>
|
||||
|
||||
<?php if ($msg !== ''): ?>
|
||||
<div class="gs-msg"><?php echo e($msg); ?></div>
|
||||
<?php endif; ?>
|
||||
|
||||
<div class="gs-card">
|
||||
<h3>Create a code</h3>
|
||||
<h3><?php echo ADM_CREATE_A_CODE; ?></h3>
|
||||
<form method="post" action="../GameEngine/Admin/Mods/goldPromo.php" class="gs-add">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="do" value="create">
|
||||
<div>
|
||||
<label>Code</label>
|
||||
<label><?php echo ADM_CODE; ?></label>
|
||||
<input class="code" type="text" name="code" maxlength="64" placeholder="BUGHUNT2026" required>
|
||||
</div>
|
||||
<div>
|
||||
<label>Gold</label>
|
||||
<label><?php echo ADMIN_GOLD; ?></label>
|
||||
<input class="num" type="number" name="gold" min="1" value="100" required>
|
||||
</div>
|
||||
<div>
|
||||
<label>Max uses (0 = ∞)</label>
|
||||
<label><?php echo ADM_MAX_USES_0; ?></label>
|
||||
<input class="num" type="number" name="max_uses" min="0" value="0">
|
||||
</div>
|
||||
<div>
|
||||
<label>Expires in (days, 0 = never)</label>
|
||||
<label><?php echo ADM_EXPIRES_IN_DAYS_0_NEVER; ?></label>
|
||||
<input class="num" type="number" name="expires_days" min="0" value="0">
|
||||
</div>
|
||||
<div class="chk">
|
||||
<input type="checkbox" name="per_user" id="per_user" checked>
|
||||
<label for="per_user" style="margin:0;text-transform:none;letter-spacing:0;">once per player</label>
|
||||
<label for="per_user" style="margin:0;text-transform:none;letter-spacing:0;"><?php echo ADM_ONCE_PER_PLAYER; ?></label>
|
||||
</div>
|
||||
<div>
|
||||
<label>Note (optional)</label>
|
||||
<input class="note" type="text" name="note" maxlength="255" placeholder="reason / campaign">
|
||||
<label><?php echo ADM_NOTE_OPTIONAL; ?></label>
|
||||
<input class="note" type="text" name="note" maxlength="255" placeholder="<?php echo ADM_REASON_CAMPAIGN; ?>">
|
||||
</div>
|
||||
<button type="submit">Create</button>
|
||||
<button type="submit"><?php echo ADM_CREATE; ?></button>
|
||||
</form>
|
||||
<div class="gs-hint">Codes are case-insensitive; allowed characters: A-Z 0-9 . _ –</div>
|
||||
<div class="gs-hint"><?php echo ADM_CODES_ARE_CASE_INSENSITIVE_ALLOWED_CHARACTER; ?></div>
|
||||
</div>
|
||||
|
||||
<div class="gs-card" style="padding:0;">
|
||||
<?php if (empty($codes)): ?>
|
||||
<div class="gs-empty">No promo codes yet.</div>
|
||||
<div class="gs-empty"><?php echo ADM_NO_PROMO_CODES_YET; ?></div>
|
||||
<?php else: ?>
|
||||
<div class="gs-scroll">
|
||||
<table class="gs-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Code</th>
|
||||
<th>Gold</th>
|
||||
<th>Uses</th>
|
||||
<th>Scope</th>
|
||||
<th>Expires</th>
|
||||
<th>Status</th>
|
||||
<th>Note</th>
|
||||
<th><?php echo ADM_CODE; ?></th>
|
||||
<th><?php echo ADMIN_GOLD; ?></th>
|
||||
<th><?php echo ADM_USES; ?></th>
|
||||
<th><?php echo ADM_SCOPE; ?></th>
|
||||
<th><?php echo ADM_EXPIRES; ?></th>
|
||||
<th><?php echo ADM_STATUS; ?></th>
|
||||
<th><?php echo ADM_NOTE; ?></th>
|
||||
<th style="width:150px;"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -161,7 +155,7 @@ $msg = isset($_GET['msg']) ? (string)$_GET['msg'] : '';
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="do" value="delete">
|
||||
<input type="hidden" name="id" value="<?php echo (int)$cd['id']; ?>">
|
||||
<button type="submit" class="b-del">Delete</button>
|
||||
<button type="submit" class="b-del"><?php echo ADM_DELETE; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
</td>
|
||||
@@ -174,14 +168,14 @@ $msg = isset($_GET['msg']) ? (string)$_GET['msg'] : '';
|
||||
</div>
|
||||
|
||||
<div class="gs-card">
|
||||
<h3>Recent redemptions</h3>
|
||||
<h3><?php echo ADM_RECENT_REDEMPTIONS; ?></h3>
|
||||
<?php if (empty($redeems)): ?>
|
||||
<div class="gs-side-note">No redemptions yet.</div>
|
||||
<div class="gs-side-note"><?php echo ADM_NO_REDEMPTIONS_YET; ?></div>
|
||||
<?php else: ?>
|
||||
<div class="gs-scroll">
|
||||
<table class="gs-table">
|
||||
<thead>
|
||||
<tr><th>When</th><th>Player</th><th>Code</th><th>Gold</th></tr>
|
||||
<tr><th><?php echo ADM_WHEN; ?></th><th><?php echo ADM_PLAYER_2; ?></th><th><?php echo ADM_CODE; ?></th><th><?php echo ADMIN_GOLD; ?></th></tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($redeems as $rd): ?>
|
||||
|
||||
+17
-21
@@ -73,31 +73,27 @@ $js = [
|
||||
</style>
|
||||
|
||||
<div class="hm-wrap">
|
||||
<h2>World Map <span>Heatmap</span></h2>
|
||||
<p class="hm-intro">
|
||||
Density overlays on the world grid to help with starting balance: where villages
|
||||
cluster, which tribes dominate a region, where inactive players sit (dead zones /
|
||||
good spawn spots), and where attacks are currently landing. North (+y) is up.
|
||||
</p>
|
||||
<h2><?php echo ADM_WORLD_MAP; ?><span><?php echo ADM_HEATMAP; ?></span></h2>
|
||||
<p class="hm-intro"><?php echo ADM_DENSITY_OVERLAYS_ON_THE_WORLD_GRID_TO_HELP_W; ?></p>
|
||||
|
||||
<form method="get" action="admin.php" class="hm-filter">
|
||||
<input type="hidden" name="p" value="heatmap">
|
||||
<div>
|
||||
<label>Grid resolution</label>
|
||||
<label><?php echo ADM_GRID_RESOLUTION; ?></label>
|
||||
<input type="number" name="res" min="<?php echo Heatmap::MIN_RES; ?>" max="<?php echo Heatmap::MAX_RES; ?>" value="<?php echo (int)$data['res']; ?>">
|
||||
</div>
|
||||
<div>
|
||||
<label>Inactive after (days)</label>
|
||||
<label><?php echo ADM_INACTIVE_AFTER_DAYS; ?></label>
|
||||
<input type="number" name="days" min="1" max="365" value="<?php echo (int)$data['inactive_days']; ?>">
|
||||
</div>
|
||||
<button type="submit">Rebuild</button>
|
||||
<button type="submit"><?php echo ADM_REBUILD; ?></button>
|
||||
</form>
|
||||
|
||||
<div class="hm-layers">
|
||||
<button data-layer="density" class="active">Village density</button>
|
||||
<button data-layer="tribe">Tribe density</button>
|
||||
<button data-layer="inactive">Inactivity</button>
|
||||
<button data-layer="attacks">Attacks</button>
|
||||
<button data-layer="density" class="active"><?php echo ADM_VILLAGE_DENSITY; ?></button>
|
||||
<button data-layer="tribe"><?php echo ADM_TRIBE_DENSITY; ?></button>
|
||||
<button data-layer="inactive"><?php echo ADM_INACTIVITY; ?></button>
|
||||
<button data-layer="attacks"><?php echo ADM_ATTACKS; ?></button>
|
||||
</div>
|
||||
|
||||
<div class="hm-stage">
|
||||
@@ -108,21 +104,21 @@ $js = [
|
||||
|
||||
<div class="hm-below">
|
||||
<div class="hm-card">
|
||||
<h3>Summary</h3>
|
||||
<div class="hm-stat"><span>Player villages</span><b><?php echo number_format($data['totals']['villages']); ?></b></div>
|
||||
<div class="hm-stat"><span>Players</span><b><?php echo number_format($data['totals']['players']); ?></b></div>
|
||||
<div class="hm-stat"><span>Inactive villages</span><b><?php echo number_format($data['totals']['inactive']); ?></b></div>
|
||||
<div class="hm-stat"><span>Attacks in flight</span><b><?php echo number_format($data['totals']['attacks']); ?></b></div>
|
||||
<h3><?php echo ADM_SUMMARY; ?></h3>
|
||||
<div class="hm-stat"><span><?php echo ADM_PLAYER_VILLAGES; ?></span><b><?php echo number_format($data['totals']['villages']); ?></b></div>
|
||||
<div class="hm-stat"><span><?php echo ADM_PLAYERS; ?></span><b><?php echo number_format($data['totals']['players']); ?></b></div>
|
||||
<div class="hm-stat"><span><?php echo ADM_INACTIVE_VILLAGES; ?></span><b><?php echo number_format($data['totals']['inactive']); ?></b></div>
|
||||
<div class="hm-stat"><span><?php echo ADM_ATTACKS_IN_FLIGHT; ?></span><b><?php echo number_format($data['totals']['attacks']); ?></b></div>
|
||||
<div class="hm-note">Map <?php echo (int)$data['world_max']; ?>×<?php echo (int)$data['world_max']; ?> radius, <?php echo (int)$data['res']; ?>×<?php echo (int)$data['res']; ?> grid (≈<?php echo (int)round($data['cell_span']); ?> tiles/cell).</div>
|
||||
</div>
|
||||
|
||||
<div class="hm-card">
|
||||
<h3 id="hm-legend-title">Legend</h3>
|
||||
<h3 id="hm-legend-title"><?php echo ADM_LEGEND; ?></h3>
|
||||
<div class="hm-legend" id="hm-legend"></div>
|
||||
</div>
|
||||
|
||||
<div class="hm-card">
|
||||
<h3>Tribe totals</h3>
|
||||
<h3><?php echo ADM_TRIBE_TOTALS; ?></h3>
|
||||
<?php
|
||||
$tt = $data['tribe_totals'];
|
||||
$sum = array_sum($tt);
|
||||
@@ -138,7 +134,7 @@ $js = [
|
||||
<div class="hm-stat"><span><span class="sw" style="background:<?php echo $tribeColors[$t]??'#64748b'; ?>;display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;"></span><?php echo e($tribeNames[$t]??('Tribe '.$t)); ?></span><b><?php echo number_format($n); ?></b></div>
|
||||
<?php endforeach; ?>
|
||||
<?php else: ?>
|
||||
<div class="hm-note">No player villages found.</div>
|
||||
<div class="hm-note"><?php echo ADM_NO_PLAYER_VILLAGES_FOUND; ?></div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
+24
-24
@@ -115,35 +115,35 @@ $role = $_SESSION['access'] == ADMIN ? 'Administrator' : 'MultiHunter';
|
||||
<div class="dashboard">
|
||||
<div class="dash-head">
|
||||
<h1>WELCOME TO <?php echo strtoupper($role); ?> CONTROL PANEL</h1>
|
||||
<div class="sub">Hello <b><?php echo $_SESSION['admin_username']; ?></b> — <?php echo date('d.m.Y H:i'); ?> Server Time</div>
|
||||
<div class="sub"><?php echo ADM_HELLO; ?><b><?php echo $_SESSION['admin_username']; ?></b> — <?php echo date('d.m.Y H:i'); ?> Server Time</div>
|
||||
</div>
|
||||
<!-- TOATE CARDURILE ORIGINALE -->
|
||||
<div class="cards">
|
||||
<div class="card blue"><h3>Total Players</h3><div class="val"><?php echo number_format($totalUsers); ?></div><div class="subv">+ <?php echo $active24h; ?> active 24h</div></div>
|
||||
<div class="card green"><h3>Online Now</h3><div class="val"><?php echo $onlineNow; ?></div><div class="subv">last 5 minutes</div></div>
|
||||
<div class="card"><h3>Villages</h3><div class="val"><?php echo number_format($totalVillages); ?></div><div class="subv">avg <?php echo $totalUsers ? round($totalVillages/$totalUsers,1) : 0; ?> / player</div></div>
|
||||
<div class="card orange"><h3>Gold in Game</h3><div class="val"><?php echo number_format($totalGold); ?></div><div class="subv"><?php echo $activePlus; ?> with Plus active</div></div>
|
||||
<div class="card red"><h3>Active Bans</h3><div class="val"><?php echo $activeBans; ?></div><div class="subv"><a href="admin.php?p=ban">manage</a></div></div>
|
||||
<div class="card"><h3>Last Registration</h3><div class="val" style="font-size:15px !important"><a href="admin.php?p=player&uid=<?php echo $lastReg['id']; ?>" style="color:#2563eb !important"><?php echo htmlspecialchars($lastReg['username']); ?></a></div><div class="subv">ID #<?php echo $lastReg['id']; ?></div></div>
|
||||
<div class="card blue"><h3><?php echo ADM_TOTAL_PLAYERS; ?></h3><div class="val"><?php echo number_format($totalUsers); ?></div><div class="subv">+ <?php echo $active24h; ?> active 24h</div></div>
|
||||
<div class="card green"><h3><?php echo ADM_ONLINE_NOW; ?></h3><div class="val"><?php echo $onlineNow; ?></div><div class="subv"><?php echo ADM_LAST_5_MIN; ?></div></div>
|
||||
<div class="card"><h3><?php echo ADM_VILLAGES; ?></h3><div class="val"><?php echo number_format($totalVillages); ?></div><div class="subv">avg <?php echo $totalUsers ? round($totalVillages/$totalUsers,1) : 0; ?> / player</div></div>
|
||||
<div class="card orange"><h3><?php echo ADM_GOLD_IN_GAME; ?></h3><div class="val"><?php echo number_format($totalGold); ?></div><div class="subv"><?php echo $activePlus; ?> with Plus active</div></div>
|
||||
<div class="card red"><h3><?php echo ADM_ACTIVE_BANS; ?></h3><div class="val"><?php echo $activeBans; ?></div><div class="subv"><a href="admin.php?p=ban"><?php echo ADM_MANAGE; ?></a></div></div>
|
||||
<div class="card"><h3><?php echo ADM_LAST_REGISTRATION; ?></h3><div class="val" style="font-size:15px !important"><a href="admin.php?p=player&uid=<?php echo $lastReg['id']; ?>" style="color:#2563eb !important"><?php echo htmlspecialchars($lastReg['username']); ?></a></div><div class="subv">ID #<?php echo $lastReg['id']; ?></div></div>
|
||||
<div class="card"><h3>PHP / MySQL</h3><div class="val" style="font-size:15px !important"><?php echo PHP_VERSION; ?></div><div class="subv"><?php echo $database->dblink->server_info; ?></div></div>
|
||||
<div class="card"><h3>Server Clock</h3><div class="val" style="font-size:15px !important"><?php echo date('H:i:s'); ?></div><div class="subv">Uptime: <?php echo @exec('uptime -p') ?: 'n/a'; ?></div></div>
|
||||
<div class="card"><h3><?php echo ADM_SERVER_CLOCK; ?></h3><div class="val" style="font-size:15px !important"><?php echo date('H:i:s'); ?></div><div class="subv">Uptime: <?php echo @exec('uptime -p') ?: 'n/a'; ?></div></div>
|
||||
</div>
|
||||
<!-- TIMELINE NOU - IN PLUS -->
|
||||
<div class="panel">
|
||||
<h2>Server Timeline</h2>
|
||||
<h2><?php echo ADM_SERVER_TIMELINE; ?></h2>
|
||||
<div class="timeline">
|
||||
<div><b>Start Date:</b><br><?php echo $serverStart; ?></div>
|
||||
<div><b>Natars:</b><br><?php echo $natarsStatus; ?></div>
|
||||
<div><b>Artefacts:</b><br><?php echo $arteStatus; ?></div>
|
||||
<div><b>WW Plans:</b><br><?php echo $plansStatus; ?></div>
|
||||
<div><b>Server Age:</b><br><?php echo $startTime ? floor((time()-$startTime)/86400).' days' : '-'; ?></div>
|
||||
<div><b>Next Event:</b><br>—</div>
|
||||
<div><b><?php echo ADM_START_DATE; ?></b><br><?php echo $serverStart; ?></div>
|
||||
<div><b><?php echo ADM_NATARS_C; ?></b><br><?php echo $natarsStatus; ?></div>
|
||||
<div><b><?php echo ADM_ARTEFACTS_C; ?></b><br><?php echo $arteStatus; ?></div>
|
||||
<div><b><?php echo ADM_WW_PLANS_C; ?></b><br><?php echo $plansStatus; ?></div>
|
||||
<div><b><?php echo ADM_SERVER_AGE; ?></b><br><?php echo $startTime ? floor((time()-$startTime)/86400).' days' : '-'; ?></div>
|
||||
<div><b><?php echo ADM_NEXT_EVENT; ?></b><br>—</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="grid2">
|
||||
<div class="panel">
|
||||
<h2>Last 5 Admin Actions</h2>
|
||||
<h2><?php echo ADM_LAST_5_ACTIONS; ?></h2>
|
||||
<div class="logmini">
|
||||
<?php
|
||||
$logs = $database->query("SELECT * FROM ".TB_PREFIX."admin_log ORDER BY id DESC LIMIT 5");
|
||||
@@ -153,17 +153,17 @@ $role = $_SESSION['access'] == ADMIN ? 'Administrator' : 'MultiHunter';
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
<div style="margin-top:10px"><a href="admin.php?p=admin_log" style="color:#2563eb !important;font-weight:600">view full log →</a></div>
|
||||
<div style="margin-top:10px"><a href="admin.php?p=admin_log" style="color:#2563eb !important;font-weight:600"><?php echo ADM_VIEW_FULL_LOG; ?></a></div>
|
||||
</div>
|
||||
|
||||
<div class="panel quick">
|
||||
<h2>Quick Actions</h2>
|
||||
<a href="admin.php?p=search">🔍 Search Player</a>
|
||||
<a href="admin.php?p=ban">🔨 Ban Manager</a>
|
||||
<a href="admin.php?p=map">🗺 Map</a>
|
||||
<a href="admin.php?p=natars">🏰 Natars</a>
|
||||
<a href="admin.php?p=addUser">👤 Add User</a>
|
||||
<a href="admin.php?p=server_info">⚙ Server Info</a>
|
||||
<h2><?php echo ADM_QUICK_ACTIONS; ?></h2>
|
||||
<a href="admin.php?p=search"><?php echo ADM_QA_SEARCH; ?></a>
|
||||
<a href="admin.php?p=ban"><?php echo ADM_QA_BAN; ?></a>
|
||||
<a href="admin.php?p=map"><?php echo ADM_QA_MAP; ?></a>
|
||||
<a href="admin.php?p=natars"><?php echo ADM_QA_NATARS; ?></a>
|
||||
<a href="admin.php?p=addUser"><?php echo ADM_QA_ADD_USER; ?></a>
|
||||
<a href="admin.php?p=server_info"><?php echo ADM_QA_SERVER_INFO; ?></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ $tribeName = [1=>'Roman',2=>'Teuton',3=>'Gaul'];
|
||||
<div class="inactive-wrap">
|
||||
<div class="inactive-head">
|
||||
<svg viewBox="0 0 24 24" width="22" height="22" fill="none"><circle cx="12" cy="8" r="4" fill="#777"/><path d="M4 20c0-3.3 3.6-6 8-6s8 2.7 8 6v1H4v-1z" fill="#777"/><circle cx="18" cy="18" r="4" fill="#e67e22"/><path d="M18 15v3l2 1" stroke="#fff" stroke-width="1.5" stroke-linecap="round"/></svg>
|
||||
<h2>Inactive Users</h2>
|
||||
<h2><?php echo ADM_INACTIVE_USERS; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="inactive-tabs">
|
||||
@@ -103,7 +103,7 @@ $tribeName = [1=>'Roman',2=>'Teuton',3=>'Gaul'];
|
||||
</div>
|
||||
<div class="stats">
|
||||
<span class="badge gold">💰 <?php echo $u['gold']; ?></span>
|
||||
<span><a href="?p=player&uid=<?php echo $uid; ?>&action=delete" onclick="return confirm('Delete?')" style="color:#c00;text-decoration:none">delete</a></span>
|
||||
<span><a href="?p=player&uid=<?php echo $uid; ?>&action=delete" onclick="return confirm('Delete?')" style="color:#c00;text-decoration:none"><?php echo ADM_DELETE_L; ?></a></span>
|
||||
</div>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
+10
-12
@@ -125,31 +125,29 @@ body > img[src*="Travian"], img[src*="admin.gif"]{display:none !important}
|
||||
<div class="login-header">
|
||||
<div class="travian-logo">TRA<span>VIAN</span>Z</div>
|
||||
<div class="admin-badge">
|
||||
<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10z"/></svg>
|
||||
Admin Control
|
||||
</div>
|
||||
<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10z"/></svg><?php echo ADM_ADMIN_CONTROL; ?></div>
|
||||
</div>
|
||||
|
||||
<div class="login-card">
|
||||
<div class="login-title">
|
||||
<h2>Server Administration</h2>
|
||||
<p>Secure access to TravianZ panel</p>
|
||||
<h2><?php echo ADM_SERVER_ADMINISTRATION; ?></h2>
|
||||
<p><?php echo ADM_SECURE_ACCESS_TO_TRAVIANZ_PANEL; ?></p>
|
||||
</div>
|
||||
|
||||
<form method="post" action="admin.php">
|
||||
<input type="hidden" name="action" value="login">
|
||||
|
||||
<div class="form-group">
|
||||
<label>Username</label>
|
||||
<input class="form-input" type="text" name="name" value="<?php echo (isset($_SESSION['admin_username']) ? $_SESSION['admin_username'] : '')?>" maxlength="20" placeholder="Enter admin username" autocomplete="username" required>
|
||||
<label><?php echo ADM_USERNAME; ?></label>
|
||||
<input class="form-input" type="text" name="name" value="<?php echo (isset($_SESSION['admin_username']) ? $_SESSION['admin_username'] : '')?>" maxlength="20" placeholder="<?php echo ADM_ENTER_ADMIN_USERNAME; ?>" autocomplete="username" required>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label>Password</label>
|
||||
<label><?php echo ADM_PASSWORD; ?></label>
|
||||
<input class="form-input" type="password" name="pw" value="" maxlength="20" placeholder="••••••••" autocomplete="current-password" required>
|
||||
</div>
|
||||
|
||||
<button type="submit" class="login-btn">Access Panel</button>
|
||||
<button type="submit" class="login-btn"><?php echo ADM_ACCESS_PANEL; ?></button>
|
||||
</form>
|
||||
|
||||
<div class="login-footer">
|
||||
@@ -158,9 +156,9 @@ body > img[src*="Travian"], img[src*="admin.gif"]{display:none !important}
|
||||
</div>
|
||||
|
||||
<div class="tribes">
|
||||
<div class="tribe-icon" title="Romans">⚔</div>
|
||||
<div class="tribe-icon" title="Teutons">🪓</div>
|
||||
<div class="tribe-icon" title="Gauls">🛡</div>
|
||||
<div class="tribe-icon" title="<?php echo ADM_ROMANS; ?>">⚔</div>
|
||||
<div class="tribe-icon" title="<?php echo ADM_TEUTONS; ?>">🪓</div>
|
||||
<div class="tribe-icon" title="<?php echo ADM_GAULS; ?>">🛡</div>
|
||||
</div>
|
||||
|
||||
<div class="credits">
|
||||
|
||||
@@ -62,20 +62,20 @@ if($maint['started_by'] > 0){
|
||||
<form method="POST">
|
||||
<?php echo csrf_field(); ?>
|
||||
<div class="maint-card">
|
||||
<div class="maint-head">Server Maintenance</div>
|
||||
<div class="maint-head"><?php echo ADMIN_SERVER_MAINTENANCE; ?></div>
|
||||
<div class="maint-status <?= $maint['active'] ? 'on' : 'off' ?>">
|
||||
<?= $maint['active'] ? 'ACTIVE since '.($maint['started_at'] ? date('H:i d.m.Y',$maint['started_at']) : '-') : 'INACTIVE – server open' ?>
|
||||
</div>
|
||||
<?php if($maint['active']){ ?>
|
||||
<div class="maint-info">Started by: <b><?= htmlspecialchars($starterName) ?></b> (UID: <?= (int)$maint['started_by'] ?>)</div>
|
||||
<div class="maint-info"><?php echo ADM_STARTED_BY; ?><b><?= htmlspecialchars($starterName) ?></b> (UID: <?= (int)$maint['started_by'] ?>)</div>
|
||||
<?php } ?>
|
||||
<div class="maint-row">
|
||||
<div>Enable maintenance</div>
|
||||
<button type="submit" name="startMaint" class="maint-btn start">Start</button>
|
||||
<div><?php echo ADM_ENABLE_MAINTENANCE; ?></div>
|
||||
<button type="submit" name="startMaint" class="maint-btn start"><?php echo ADM_START; ?></button>
|
||||
</div>
|
||||
<div class="maint-row">
|
||||
<div>Disable maintenance</div>
|
||||
<button type="submit" name="removeMaint" class="maint-btn stop">Stop</button>
|
||||
<div><?php echo ADM_DISABLE_MAINTENANCE; ?></div>
|
||||
<button type="submit" name="removeMaint" class="maint-btn stop"><?php echo ADM_STOP; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -40,31 +40,27 @@ if($_SESSION['access'] < ADMIN) die("Access Denied: You are not Admin!");
|
||||
<div class="resetgold-wrap">
|
||||
<div class="resetgold-head">
|
||||
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 2v10l4-4" stroke="#e74c3c" stroke-width="2" stroke-linecap="round"/><circle cx="12" cy="17" r="5" fill="#c0392b"/></svg>
|
||||
<h2>Reset Gold for all players</h2>
|
||||
<h2><?php echo ADM_RESET_GOLD_FOR_ALL_PLAYERS; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="resetgold-card">
|
||||
<div class="warn-icon">
|
||||
<svg viewBox="0 0 24 24"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"/></svg>
|
||||
</div>
|
||||
<h3>Reset All Players Gold</h3>
|
||||
<p>This action will set the gold to <b>0</b> for ALL players from the server.</p>
|
||||
<h3><?php echo ADM_RESET_ALL_PLAYERS_GOLD; ?></h3>
|
||||
<p><?php echo ADM_THIS_ACTION_WILL_SET_THE_GOLD_TO; ?><b>0</b><?php echo ADM_FOR_ALL_PLAYERS_FROM_THE_SERVER; ?></p>
|
||||
|
||||
<div class="danger-box">
|
||||
⚠️ WARNING: The action is irreversible! Make sure you have backup first.
|
||||
</div>
|
||||
<div class="danger-box"><?php echo ADM_WARNING_THE_ACTION_IS_IRREVERSIBLE_MAKE_SURE; ?></div>
|
||||
|
||||
<form action="../GameEngine/Admin/Mods/mainteneceResetGold.php" method="POST" class="resetgold-form" onsubmit="return confirm('Are you SURE you want to reset gold to ALL players?');">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
|
||||
<button type="submit">
|
||||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none"><path d="M3 6h18M8 6V4h8v2m-1 0v14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2V6h10z" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg>
|
||||
RESET GOLD NOW
|
||||
</button>
|
||||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none"><path d="M3 6h18M8 6V4h8v2m-1 0v14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2V6h10z" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg><?php echo ADM_RESET_GOLD_NOW; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<?php if(isset($_GET['g'])){ ?>
|
||||
<div class="resetgold-success">✓ All players gold has been reset!</div>
|
||||
<div class="resetgold-success"><?php echo ADM_ALL_PLAYERS_GOLD_HAS_BEEN_RESET; ?></div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
@@ -40,31 +40,27 @@ if($_SESSION['access'] < ADMIN) die("Access Denied: You are not Admin!");
|
||||
<div class="resetplus-wrap">
|
||||
<div class="resetplus-head">
|
||||
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 2v10l4-4" stroke="#8e44ad" stroke-width="2" stroke-linecap="round"/><circle cx="12" cy="17" r="5" fill="#6c3483"/></svg>
|
||||
<h2>Reset All Players Plus</h2>
|
||||
<h2><?php echo ADM_RESET_ALL_PLAYERS_PLUS; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="resetplus-card">
|
||||
<div class="warn-icon">
|
||||
<svg viewBox="0 0 24 24"><path d="M12 4v16M4 12h16" stroke="white" stroke-width="3" stroke-linecap="round"/></svg>
|
||||
</div>
|
||||
<h3>Reset All Players Plus</h3>
|
||||
<p>This action will disable Travian Plus for ALL players.</p>
|
||||
<h3><?php echo ADM_RESET_ALL_PLAYERS_PLUS; ?></h3>
|
||||
<p><?php echo ADM_THIS_ACTION_WILL_DISABLE_TRAVIAN_PLUS_FOR_AL; ?></p>
|
||||
|
||||
<div class="danger-box">
|
||||
⚠️ Plus it will be set to 0 days for everyone.
|
||||
</div>
|
||||
<div class="danger-box"><?php echo ADM_PLUS_IT_WILL_BE_SET_TO_0_DAYS_FOR_EVERYONE; ?></div>
|
||||
|
||||
<form action="../GameEngine/Admin/Mods/mainteneceResetPlus.php" method="POST" class="resetplus-form" onsubmit="return confirm('Are you SURE you want to reset the Plus to ALL players?');">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
|
||||
<button type="submit">
|
||||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none"><path d="M3 6h18M8 6V4h8v2m-1 0v14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2V6h10z" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg>
|
||||
RESET PLUS NOW
|
||||
</button>
|
||||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none"><path d="M3 6h18M8 6V4h8v2m-1 0v14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2V6h10z" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg><?php echo ADM_RESET_PLUS_NOW; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<?php if(isset($_GET['g'])){ ?>
|
||||
<div class="resetplus-success">✓ Plus all the players have been reset!</div>
|
||||
<div class="resetplus-success"><?php echo ADM_PLUS_ALL_THE_PLAYERS_HAVE_BEEN_RESET; ?></div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
@@ -45,38 +45,34 @@ if($_SESSION['access'] < ADMIN) die("Access Denied: You are not Admin!");
|
||||
<div class="resetres-wrap">
|
||||
<div class="resetres-head">
|
||||
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4 7h16v10H4z" fill="#27ae60"/><path d="M8 3v4M16 3v4" stroke="#16a085" stroke-width="2"/></svg>
|
||||
<h2>Reset All Resource Bonuses</h2>
|
||||
<h2><?php echo ADM_RESET_ALL_RESOURCE_BONUSES; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="resetres-card">
|
||||
<div class="warn-icon">
|
||||
<svg viewBox="0 0 24 24"><path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"/></svg>
|
||||
</div>
|
||||
<h3>Reset All Resource Bonuses</h3>
|
||||
<p>This action will disable the 25% bonus for ALL resources at all players.</p>
|
||||
<h3><?php echo ADM_RESET_ALL_RESOURCE_BONUSES; ?></h3>
|
||||
<p><?php echo ADM_THIS_ACTION_WILL_DISABLE_THE_25_BONUS_FOR_AL; ?></p>
|
||||
|
||||
<div class="res-icons">
|
||||
<img src="../img/admin/r/1.gif" title="Wood">
|
||||
<img src="../img/admin/r/2.gif" title="Clay">
|
||||
<img src="../img/admin/r/3.gif" title="Iron">
|
||||
<img src="../img/admin/r/4.gif" title="Crop">
|
||||
<img src="../img/admin/r/1.gif" title="<?php echo ADM_WOOD; ?>">
|
||||
<img src="../img/admin/r/2.gif" title="<?php echo ADM_CLAY; ?>">
|
||||
<img src="../img/admin/r/3.gif" title="<?php echo ADM_IRON; ?>">
|
||||
<img src="../img/admin/r/4.gif" title="<?php echo ADM_CROP; ?>">
|
||||
</div>
|
||||
|
||||
<div class="danger-box">
|
||||
⚠️ All resource bonuses will be set to 0 days.
|
||||
</div>
|
||||
<div class="danger-box"><?php echo ADM_ALL_RESOURCE_BONUSES_WILL_BE_SET_TO_0_DAYS; ?></div>
|
||||
|
||||
<form action="../GameEngine/Admin/Mods/mainteneceResetPlusBonus.php" method="POST" class="resetres-form" onsubmit="return confirm('Are you SURE you want to reset resource bonuses?');">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
|
||||
<button type="submit">
|
||||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none"><path d="M3 6h18M8 6V4h8v2m-1 0v14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2V6h10z" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg>
|
||||
RESET RESOURCE BONUS
|
||||
</button>
|
||||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none"><path d="M3 6h18M8 6V4h8v2m-1 0v14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2V6h10z" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg><?php echo ADM_RESET_RESOURCE_BONUS; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<?php if(isset($_GET['g'])){ ?>
|
||||
<div class="resetres-success">✓ Resource bonuses have been reset for all players!</div>
|
||||
<div class="resetres-success"><?php echo ADM_RESOURCE_BONUSES_HAVE_BEEN_RESET_FOR_ALL_PLA; ?></div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
@@ -131,14 +131,14 @@ body{margin:0;background:#f1f5f9;font-family:system-ui,-apple-system,Segoe UI,Ro
|
||||
<div class="map-wrap">
|
||||
<div class="map-header">
|
||||
<h2><?php echo SERVER_NAME;?> Map</h2>
|
||||
<p>Interactive world map – search players, villages and artifacts</p>
|
||||
<p><?php echo ADM_INTERACTIVE_WORLD_MAP_SEARCH_PLAYERS_VILLAGE; ?></p>
|
||||
</div>
|
||||
|
||||
<form id="show" action="admin.php?p=map" method="POST" class="map-filters">
|
||||
<?php echo csrf_field(); ?>
|
||||
<div class="filter-group">
|
||||
<input id="show1" name="show1" type="checkbox" <?php echo $check1;?> value="1">
|
||||
<label for="show1">Players</label>
|
||||
<label for="show1"><?php echo ADM_PLAYERS; ?></label>
|
||||
</div>
|
||||
<div class="filter-group">
|
||||
<input id="show2" name="show2" type="checkbox" <?php echo $check2;?> value="2">
|
||||
@@ -146,9 +146,9 @@ body{margin:0;background:#f1f5f9;font-family:system-ui,-apple-system,Segoe UI,Ro
|
||||
</div>
|
||||
<div class="filter-group">
|
||||
<input id="show3" name="show3" type="checkbox" <?php echo $check3;?> value="2">
|
||||
<label for="show3">Artifacts</label>
|
||||
<label for="show3"><?php echo ADM_ARTIFACTS; ?></label>
|
||||
</div>
|
||||
<button type="submit" class="btn-show">Apply Filters</button>
|
||||
<button type="submit" class="btn-show"><?php echo ADM_APPLY_FILTERS; ?></button>
|
||||
</form>
|
||||
|
||||
<div class="map-layout">
|
||||
@@ -157,7 +157,7 @@ body{margin:0;background:#f1f5f9;font-family:system-ui,-apple-system,Segoe UI,Ro
|
||||
<button type="button" id="zoomOut">−</button>
|
||||
<span id="zoomLabel">100%</span>
|
||||
<button type="button" id="zoomIn">+</button>
|
||||
<button type="button" id="zoomReset">Reset</button>
|
||||
<button type="button" id="zoomReset"><?php echo ADM_RESET; ?></button>
|
||||
</div>
|
||||
<div class="zoomlevels">
|
||||
<span id="zl">-<?php echo WORLD_MAX;?></span>
|
||||
@@ -229,7 +229,7 @@ body{margin:0;background:#f1f5f9;font-family:system-ui,-apple-system,Segoe UI,Ro
|
||||
<!-- LEGENDE CENTRATE SUB HARTA - Tribes + Artifacts una langa alta -->
|
||||
<div class="legend-row">
|
||||
<div class="legend-card">
|
||||
<div class="legend-head">Tribes</div>
|
||||
<div class="legend-head"><?php echo ADM_TRIBES; ?></div>
|
||||
<div class="legend-body">
|
||||
<table>
|
||||
<tr><td><img src="../img/admin/map_1.gif"></td><td><?php echo TRIBE1;?></td></tr>
|
||||
@@ -240,12 +240,12 @@ body{margin:0;background:#f1f5f9;font-family:system-ui,-apple-system,Segoe UI,Ro
|
||||
<?php if(defined('NEW_FUNCTION_TRIBE_EGIPTEANS') && NEW_FUNCTION_TRIBE_EGIPTEANS){ ?><tr><td><img src="../img/admin/map_7.gif"></td><td><?php echo TRIBE7;?></td></tr><?php } ?>
|
||||
<?php if(defined('NEW_FUNCTION_TRIBE_SPARTANS') && NEW_FUNCTION_TRIBE_SPARTANS){ ?><tr><td><img src="../img/admin/map_8.gif"></td><td><?php echo TRIBE8;?></td></tr><?php } ?>
|
||||
<?php if(defined('NEW_FUNCTION_TRIBE_VIKINGS') && NEW_FUNCTION_TRIBE_VIKINGS){ ?><tr><td><img src="../img/admin/map_9.gif"></td><td><?php echo TRIBE9;?></td></tr><?php } ?>
|
||||
<tr><td><img src="../img/admin/map_0.gif"></td><td>Multihunters</td></tr>
|
||||
<tr><td><img src="../img/admin/map_0.gif"></td><td><?php echo ADM_MULTIHUNTERS; ?></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="legend-card">
|
||||
<div class="legend-head">Artifacts</div>
|
||||
<div class="legend-head"><?php echo ADM_ARTIFACTS; ?></div>
|
||||
<div class="legend-body">
|
||||
<table>
|
||||
<tr><td><img src="../img/admin/map_11.gif"></td><td><?php echo VILLAGE_EFFECT;?></td></tr>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<h1 class="left">Check & Edit Map Tile</h1>
|
||||
<h1 class="left"><?php echo ADM_CHECK_EDIT_MAP_TILE; ?></h1>
|
||||
|
||||
<?php
|
||||
#################################################################################
|
||||
@@ -168,7 +168,7 @@ elseif(isset($_GET['do_get']) && isset($_POST['x'])){
|
||||
<b>Y</b>
|
||||
<input class="text" name="y" value="<?=$coord_y?>" maxlength="4">
|
||||
</div>
|
||||
<button class="btn-go" type="submit">Check Tile</button>
|
||||
<button class="btn-go" type="submit"><?php echo ADM_CHECK_TILE; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ $_SESSION['mass_color'] = $_SESSION['mass_color'] ?? 'black';
|
||||
<div class="massmsg-wrap">
|
||||
<div class="massmsg-head">
|
||||
<svg viewBox="0 0 24 24" fill="none"><path d="M20 4H4c-1.1 0-2.9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z" fill="#e67e22"/></svg>
|
||||
<h2>Mass Message</h2>
|
||||
<h2><?php echo ADMIN_MASS_MESSAGE; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="massmsg-card">
|
||||
@@ -62,27 +62,27 @@ $_SESSION['mass_color'] = $_SESSION['mass_color'] ?? 'black';
|
||||
<svg viewBox="0 0 24 24"><path d="M20 4H4c-1.1 0-2.9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z"/></svg>
|
||||
</div>
|
||||
<div>
|
||||
<h3>Send Message to All Players</h3>
|
||||
<h3><?php echo ADM_SEND_MESSAGE_TO_ALL_PLAYERS; ?></h3>
|
||||
<p>In-game message for all users (ID > 5)</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php if(isset($_GET['confirm'])):?>
|
||||
<div class="massmsg-confirm">
|
||||
<b>Confirm:</b> Are you sure you want to send?<br>
|
||||
<b>Subject:</b> <span style="color:<?=$_SESSION['mass_color']?>"><?=htmlspecialchars($_SESSION['mass_subject'])?></span>
|
||||
<b><?php echo ADM_CONFIRM; ?></b><?php echo ADM_ARE_YOU_SURE_YOU_WANT_TO_SEND; ?><br>
|
||||
<b><?php echo ADM_SUBJECT; ?></b> <span style="color:<?=$_SESSION['mass_color']?>"><?=htmlspecialchars($_SESSION['mass_subject'])?></span>
|
||||
</div>
|
||||
<form action="../GameEngine/Admin/Mods/massmessage.php" method="POST" class="massmsg-form">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="admid" value="<?=$id?>">
|
||||
<input type="hidden" name="action" value="execute">
|
||||
<button type="submit" name="confirm" value="Yes" style="background:#27ae60">✓ Yes, Send</button>
|
||||
<button type="submit" name="confirm" value="No" style="background:#95a5a6;margin-top:8px">Cancel</button>
|
||||
<button type="submit" name="confirm" value="Yes" style="background:#27ae60"><?php echo ADM_YES_SEND; ?></button>
|
||||
<button type="submit" name="confirm" value="No" style="background:#95a5a6;margin-top:8px"><?php echo ADM_CANCEL; ?></button>
|
||||
</form>
|
||||
|
||||
<?php elseif(isset($_GET['sending'])):?>
|
||||
<div style="text-align:center;padding:30px">
|
||||
<div style="font-size:16px;margin-bottom:10px">Sending messages...</div>
|
||||
<div style="font-size:16px;margin-bottom:10px"><?php echo ADM_SENDING_MESSAGES; ?></div>
|
||||
<div style="color:#666"><?=e($_GET['msg'] ?? '')?></div>
|
||||
</div>
|
||||
|
||||
@@ -93,29 +93,27 @@ $_SESSION['mass_color'] = $_SESSION['mass_color'] ?? 'black';
|
||||
<input type="hidden" name="action" value="prepare">
|
||||
|
||||
<div class="field">
|
||||
<label>Subject</label>
|
||||
<input type="text" name="subject" placeholder="ex: Maintenance" required maxlength="100">
|
||||
<label><?php echo ADM_SUBJECT_2; ?></label>
|
||||
<input type="text" name="subject" placeholder="<?php echo ADM_EX_MAINTENANCE; ?>" required maxlength="100">
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label>Message Color</label>
|
||||
<input type="text" name="color" value="black" placeholder="black sau #e67e22">
|
||||
<label><?php echo ADM_MESSAGE_COLOR; ?></label>
|
||||
<input type="text" name="color" value="black" placeholder="<?php echo ADM_BLACK_SAU_E67E22; ?>">
|
||||
</div>
|
||||
|
||||
<div class="field full">
|
||||
<label>Message Content</label>
|
||||
<textarea name="message" rows="12" placeholder="Write the message... you can use [url][img]" required></textarea>
|
||||
<label><?php echo ADM_MESSAGE_CONTENT; ?></label>
|
||||
<textarea name="message" rows="12" placeholder="<?php echo ADM_WRITE_THE_MESSAGE_YOU_CAN_USE_URL_IMG; ?>" required></textarea>
|
||||
</div>
|
||||
|
||||
<button type="submit">
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M2 21l21-9L2 3v7l15 2-15 2v7z" fill="#fff"/></svg>
|
||||
Continua
|
||||
</button>
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M2 21l21-9L2 3v7l15 2-15 2v7z" fill="#fff"/></svg><?php echo ADM_CONTINUA; ?></button>
|
||||
</form>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
|
||||
<?php if(isset($_GET['done'])){?>
|
||||
<div class="massmsg-success">✓ Mass message successfully sent to all players!</div>
|
||||
<div class="massmsg-success"><?php echo ADM_MASS_MESSAGE_SUCCESSFULLY_SENT_TO_ALL_PLAYER; ?></div>
|
||||
<?php }?>
|
||||
</div>
|
||||
@@ -45,31 +45,27 @@ $bid = $_GET['bid']?? '';
|
||||
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M4 6h16v10H7l-3 3V6z" fill="#555"/>
|
||||
</svg>
|
||||
<h2>IGM / Reports Lookup</h2>
|
||||
<h2><?php echo ADM_IGM_REPORTS_LOOKUP; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="message-grid">
|
||||
<div class="msg-card igm">
|
||||
<h3>
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M4 5h16v10H7l-3 3V5z" fill="#3498db"/></svg>
|
||||
IGM by ID
|
||||
</h3>
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M4 5h16v10H7l-3 3V5z" fill="#3498db"/></svg><?php echo ADM_IGM_BY_ID; ?></h3>
|
||||
<form action="" method="get">
|
||||
<input type="hidden" name="p" value="message">
|
||||
<input type="text" name="nid" placeholder="Enter message ID..." value="<?php echo htmlspecialchars($nid);?>" autofocus>
|
||||
<button type="submit">Go</button>
|
||||
<input type="text" name="nid" placeholder="<?php echo ADM_ENTER_MESSAGE_ID; ?>" value="<?php echo htmlspecialchars($nid);?>" autofocus>
|
||||
<button type="submit"><?php echo ADM_GO; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="msg-card report">
|
||||
<h3>
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M6 2h9l5 5v13a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2z" fill="#e67e22"/><path d="M14 2v6h6" fill="#d35400"/></svg>
|
||||
Report by ID
|
||||
</h3>
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M6 2h9l5 5v13a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2z" fill="#e67e22"/><path d="M14 2v6h6" fill="#d35400"/></svg><?php echo ADM_REPORT_BY_ID; ?></h3>
|
||||
<form action="" method="get">
|
||||
<input type="hidden" name="p" value="message">
|
||||
<input type="text" name="bid" placeholder="Enter report ID..." value="<?php echo htmlspecialchars($bid);?>">
|
||||
<button type="submit">Go</button>
|
||||
<input type="text" name="bid" placeholder="<?php echo ADM_ENTER_REPORT_ID; ?>" value="<?php echo htmlspecialchars($bid);?>">
|
||||
<button type="submit"><?php echo ADM_GO; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -40,10 +40,10 @@ if($nid > 0){
|
||||
<link href="../<?php echo GP_LOCATE;?>lang/en/compact.css?f4b7i" rel="stylesheet" type="text/css">
|
||||
<link href="../<?php echo GP_LOCATE;?>travian.css?e21d2" rel="stylesheet" type="text/css">
|
||||
<div style="max-width:900px;margin:20px auto">
|
||||
<a href="?p=msg" style="font-size:12px">← Back to messages</a>
|
||||
<div style="margin:8px 0;font-size:12px"><span class="b">Sent to</span>: <?php echo htmlspecialchars($database->getUserField($msg[0]['target'],'username',0));?></div>
|
||||
<a href="?p=msg" style="font-size:12px"><?php echo ADM_BACK_TO_MESSAGES; ?></a>
|
||||
<div style="margin:8px 0;font-size:12px"><span class="b"><?php echo ADM_SENT_TO; ?></span>: <?php echo htmlspecialchars($database->getUserField($msg[0]['target'],'username',0));?></div>
|
||||
<div id="content" class="messages">
|
||||
<h1>Message</h1>
|
||||
<h1><?php echo ADM_MESSAGE; ?></h1>
|
||||
<div id="read_head" class="msg_head"></div>
|
||||
<div id="read_content" class="msg_content">
|
||||
<img src="../img/x.gif" id="label" class="read" alt="">
|
||||
@@ -129,7 +129,7 @@ $msgs = $database->query("SELECT * FROM ".TB_PREFIX."mdata WHERE $where ORDER BY
|
||||
<form class="search-box" method="get">
|
||||
<input type="hidden" name="p" value="msg">
|
||||
<input type="hidden" name="f" value="<?php echo htmlspecialchars($filter);?>">
|
||||
<input type="text" name="q" placeholder="Search..." value="<?php echo htmlspecialchars($search);?>">
|
||||
<input type="text" name="q" placeholder="<?php echo ADM_SEARCH_PH; ?>" value="<?php echo htmlspecialchars($search);?>">
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -152,7 +152,7 @@ $msgs = $database->query("SELECT * FROM ".TB_PREFIX."mdata WHERE $where ORDER BY
|
||||
<div class="msg-preview"><?php echo htmlspecialchars($preview);?>...</div>
|
||||
<div class="msg-foot">
|
||||
<span>#<?php echo $m['id'];?></span>
|
||||
<span>view →</span>
|
||||
<span><?php echo ADM_VIEW_ARROW; ?></span>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
@@ -53,39 +53,31 @@ $pairs = $data['pairs'];
|
||||
</style>
|
||||
|
||||
<div class="mad-wrap">
|
||||
<h2>Multi-Account <span>Detection</span></h2>
|
||||
<p class="mad-intro">
|
||||
Heuristic correlation of account pairs by shared IP, subnet, device/browser
|
||||
fingerprint (User-Agent), overlapping login times, and resource-transfer flow.
|
||||
This is a <b>risk score, not proof</b> — use it to prioritise which
|
||||
pairs a human should investigate. Nothing is banned automatically.
|
||||
</p>
|
||||
<h2><?php echo ADM_MULTI_ACCOUNT; ?><span><?php echo ADM_DETECTION; ?></span></h2>
|
||||
<p class="mad-intro"><?php echo ADM_HEURISTIC_CORRELATION_OF_ACCOUNT_PAIRS_BY_SH; ?><b><?php echo ADM_RISK_SCORE_NOT_PROOF; ?></b><?php echo ADM_USE_IT_TO_PRIORITISE_WHICH_PAIRS_A_HUMAN_SHO; ?></p>
|
||||
|
||||
<form method="get" action="admin.php" class="mad-filter">
|
||||
<input type="hidden" name="p" value="multiacc">
|
||||
<div>
|
||||
<label>Window (days)</label>
|
||||
<label><?php echo ADM_WINDOW_DAYS; ?></label>
|
||||
<input type="number" name="days" min="1" max="365" value="<?php echo (int)$days; ?>">
|
||||
</div>
|
||||
<div>
|
||||
<label>Min score</label>
|
||||
<label><?php echo ADM_MIN_SCORE; ?></label>
|
||||
<input type="number" name="min" min="0" max="100" value="<?php echo (int)$minScore; ?>">
|
||||
</div>
|
||||
<div>
|
||||
<label>Focus on UID (optional)</label>
|
||||
<label><?php echo ADM_FOCUS_ON_UID_OPTIONAL; ?></label>
|
||||
<input type="number" name="focus" min="0" value="<?php echo $focusUid ?: ''; ?>">
|
||||
</div>
|
||||
<button type="submit">Analyse</button>
|
||||
<button type="submit"><?php echo ADM_ANALYSE; ?></button>
|
||||
<?php if ($focusUid || $days != MultiAccount::WINDOW_DAYS || $minScore != MultiAccount::MIN_REPORT_SCORE): ?>
|
||||
<a class="reset" href="admin.php?p=multiacc">reset</a>
|
||||
<a class="reset" href="admin.php?p=multiacc"><?php echo ADM_RESET_2; ?></a>
|
||||
<?php endif; ?>
|
||||
</form>
|
||||
|
||||
<?php if ($data['truncated']): ?>
|
||||
<div class="mad-warn">
|
||||
Row cap reached while scanning login history (window is large / very busy server).
|
||||
Results still valid but may be incomplete — narrow the window for full coverage.
|
||||
</div>
|
||||
<div class="mad-warn"><?php echo ADM_ROW_CAP_REACHED_WHILE_SCANNING_LOGIN_HISTORY; ?></div>
|
||||
<?php endif; ?>
|
||||
|
||||
<div class="mad-meta">
|
||||
@@ -97,8 +89,7 @@ $pairs = $data['pairs'];
|
||||
</div>
|
||||
|
||||
<?php if (empty($pairs)): ?>
|
||||
<div class="mad-table"><div class="mad-empty">
|
||||
No account pairs at or above the current score threshold.<br>
|
||||
<div class="mad-table"><div class="mad-empty"><?php echo ADM_NO_ACCOUNT_PAIRS_AT_OR_ABOVE_THE_CURRENT_SCO; ?><br>
|
||||
<?php if ((int)$data['scanned']['mad_session'] === 0): ?>
|
||||
Tip: the User-Agent signal starts filling in only after players log in
|
||||
once with this feature deployed. IP & login-time signals work on
|
||||
@@ -111,10 +102,10 @@ $pairs = $data['pairs'];
|
||||
<table class="mad-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width:80px;">Risk</th>
|
||||
<th>Account A</th>
|
||||
<th>Account B</th>
|
||||
<th style="width:44%;">Why</th>
|
||||
<th style="width:80px;"><?php echo ADM_RISK; ?></th>
|
||||
<th><?php echo ADM_ACCOUNT_A; ?></th>
|
||||
<th><?php echo ADM_ACCOUNT_B; ?></th>
|
||||
<th style="width:44%;"><?php echo ADM_WHY; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -132,16 +123,16 @@ $pairs = $data['pairs'];
|
||||
<a href="admin.php?p=player&uid=<?php echo (int)$p['uid_a']; ?>"><?php echo e($p['name_a']); ?></a>
|
||||
<span class="uid">#<?php echo (int)$p['uid_a']; ?></span>
|
||||
<span class="sub">
|
||||
<a href="admin.php?p=userlogin&uid=<?php echo (int)$p['uid_a']; ?>">login log</a>
|
||||
<a href="admin.php?p=multiacc&focus=<?php echo (int)$p['uid_a']; ?>">focus</a>
|
||||
<a href="admin.php?p=userlogin&uid=<?php echo (int)$p['uid_a']; ?>"><?php echo ADM_LOGIN_LOG; ?></a>
|
||||
<a href="admin.php?p=multiacc&focus=<?php echo (int)$p['uid_a']; ?>"><?php echo ADM_FOCUS; ?></a>
|
||||
</span>
|
||||
</td>
|
||||
<td class="mad-acc">
|
||||
<a href="admin.php?p=player&uid=<?php echo (int)$p['uid_b']; ?>"><?php echo e($p['name_b']); ?></a>
|
||||
<span class="uid">#<?php echo (int)$p['uid_b']; ?></span>
|
||||
<span class="sub">
|
||||
<a href="admin.php?p=userlogin&uid=<?php echo (int)$p['uid_b']; ?>">login log</a>
|
||||
<a href="admin.php?p=multiacc&focus=<?php echo (int)$p['uid_b']; ?>">focus</a>
|
||||
<a href="admin.php?p=userlogin&uid=<?php echo (int)$p['uid_b']; ?>"><?php echo ADM_LOGIN_LOG; ?></a>
|
||||
<a href="admin.php?p=multiacc&focus=<?php echo (int)$p['uid_b']; ?>"><?php echo ADM_FOCUS; ?></a>
|
||||
</span>
|
||||
</td>
|
||||
<td class="chips">
|
||||
|
||||
+12
-12
@@ -49,22 +49,22 @@ $deletedArtifacts = $database->getDeletedArtifacts();
|
||||
<div class="nat-wrap">
|
||||
<div class="nat-head">
|
||||
<svg width="22" height="22" viewBox="0 0 24 24" fill="#7f8c8d"><path d="M12 2L2 7v10l10 5 10-5V7z"/></svg>
|
||||
<h1>Natars Management</h1>
|
||||
<h1><?php echo ADMIN_NATARS_MANAGEMENT; ?></h1>
|
||||
</div>
|
||||
|
||||
<div class="nat-grid">
|
||||
<!-- WW Villages -->
|
||||
<div class="nat-card">
|
||||
<h2>🏰 WW Villages</h2>
|
||||
<h2><?php echo ADM_WW_VILLAGES; ?></h2>
|
||||
<div class="body">
|
||||
<form method="post" action="../Admin/admin.php?action=addWWVillages">
|
||||
<?php echo csrf_field(); ?>
|
||||
<table class="nat-table">
|
||||
<tr><th>Number</th><th>Player ID</th><th></th></tr>
|
||||
<tr><th><?php echo ADM_NUMBER; ?></th><th><?php echo ADM_PLAYER_ID; ?></th><th></th></tr>
|
||||
<tr>
|
||||
<td><input type="number" name="numberOfVillages" value="1" min="1" max="999" style="width:60px"></td>
|
||||
<td><input type="text" name="playerId" value="<?php echo Artifacts::NATARS_UID;?>" style="width:80px"></td>
|
||||
<td><button onclick="this.disabled=true;this.form.submit();">Add</button></td>
|
||||
<td><button onclick="this.disabled=true;this.form.submit();"><?php echo ADM_ADD; ?></button></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
@@ -73,12 +73,12 @@ $deletedArtifacts = $database->getDeletedArtifacts();
|
||||
|
||||
<!-- Artifacts -->
|
||||
<div class="nat-card">
|
||||
<h2>✨ Add Artifacts</h2>
|
||||
<h2><?php echo ADM_ADD_ARTIFACTS; ?></h2>
|
||||
<div class="body">
|
||||
<form method="post" action="../Admin/admin.php?action=addArtifacts">
|
||||
<?php echo csrf_field(); ?>
|
||||
<table class="nat-table">
|
||||
<tr><th>Icon</th><th>Type</th><th>Qty</th><th>Player</th><th></th></tr>
|
||||
<tr><th><?php echo ADM_ICON; ?></th><th><?php echo ADM_TYPE; ?></th><th><?php echo ADM_QTY_2; ?></th><th><?php echo ADM_PLAYER_2; ?></th><th></th></tr>
|
||||
<tr>
|
||||
<td class="icon"><img id="artifactImage" class="artefact_icon_1" src="../img/x.gif"></td>
|
||||
<td>
|
||||
@@ -95,7 +95,7 @@ $deletedArtifacts = $database->getDeletedArtifacts();
|
||||
</td>
|
||||
<td><input type="number" name="artifactQuantity" value="1" min="1" max="999" style="width:50px"></td>
|
||||
<td><input type="text" name="playerId" value="<?php echo Artifacts::NATARS_UID;?>" style="width:70px"></td>
|
||||
<td><button onclick="this.disabled=true;this.form.submit();">Add</button></td>
|
||||
<td><button onclick="this.disabled=true;this.form.submit();"><?php echo ADM_ADD; ?></button></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
@@ -105,13 +105,13 @@ $deletedArtifacts = $database->getDeletedArtifacts();
|
||||
|
||||
<!-- Deleted Artifacts -->
|
||||
<div class="nat-card">
|
||||
<h2>🗑️ Deleted Artifacts</h2>
|
||||
<h2><?php echo ADM_DELETED_ARTIFACTS; ?></h2>
|
||||
<div class="body" style="padding:0">
|
||||
<table class="nat-table">
|
||||
<tr><th></th><th></th><th>Name</th><th>Bonus</th><th>Effect</th><th>Time</th><th>Old Owner</th><th>Old Village</th></tr>
|
||||
<tr><th></th><th></th><th><?php echo ADM_NAME; ?></th><th><?php echo ADM_BONUS; ?></th><th><?php echo ADM_EFFECT; ?></th><th><?php echo ADM_TIME; ?></th><th><?php echo ADM_OLD_OWNER; ?></th><th><?php echo ADM_OLD_VILLAGE; ?></th></tr>
|
||||
<?php if(empty($deletedArtifacts)){ echo '<tr><td colspan="8" class="none">No artifacts</td></tr>'; } else { foreach($deletedArtifacts as $artifact){ $info=Artifacts::getArtifactInfo($artifact);?>
|
||||
<tr>
|
||||
<td><a href="?action=returnArtifact&artid=<?php echo $artifact['id'];?>&del=1"><img src="../../img/admin/acc.gif" title="Restore"></a></td>
|
||||
<td><a href="?action=returnArtifact&artid=<?php echo $artifact['id'];?>&del=1"><img src="../../img/admin/acc.gif" title="<?php echo ADM_RESTORE; ?>"></a></td>
|
||||
<td class="icon"><img class="artefact_icon_<?php echo $artifact['type'];?>" src="../img/x.gif"></td>
|
||||
<td><?php echo $artifact['name'];?></td>
|
||||
<td><?php echo $info['bonus'];?></td>
|
||||
@@ -127,10 +127,10 @@ $deletedArtifacts = $database->getDeletedArtifacts();
|
||||
|
||||
<!-- Overview -->
|
||||
<div class="nat-card" style="margin-top:14px">
|
||||
<h2>📊 Artifacts Overview</h2>
|
||||
<h2><?php echo ADM_ARTIFACTS_OVERVIEW; ?></h2>
|
||||
<div class="body" style="padding:0">
|
||||
<table class="nat-table">
|
||||
<tr><th>Icon</th><th>Name</th><th>Effect</th><th>Player</th><th>Alliance</th></tr>
|
||||
<tr><th><?php echo ADM_ICON; ?></th><th><?php echo ADM_NAME; ?></th><th><?php echo ADM_EFFECT; ?></th><th><?php echo ADM_PLAYER_2; ?></th><th><?php echo ADMIN_ALLIANCE; ?></th></tr>
|
||||
<?php
|
||||
$small=$database->getArtifactsBysize(1); $big=$database->getArtifactsBysize(2); $unique=$database->getArtifactsBysize(3);
|
||||
if(empty($small)&&empty($big)&&empty($unique)){ echo '<tr><td colspan="5" class="none">No artifacts found</td></tr>'; }
|
||||
|
||||
@@ -51,8 +51,8 @@ if($_SESSION['access'] < ADMIN) die("Access Denied");
|
||||
|
||||
<div class="notreg-wrap">
|
||||
<div class="notreg-head">
|
||||
<h2>✉️ Players Not Activated</h2>
|
||||
<div class="notreg-search"><input type="text" id="notregSearch" placeholder="Caută username sau email..."></div>
|
||||
<h2><?php echo ADM_NOT_ACTIVATED_H; ?></h2>
|
||||
<div class="notreg-search"><input type="text" id="notregSearch" placeholder="<?php echo ADM_SEARCH_USER_EMAIL; ?>"></div>
|
||||
</div>
|
||||
|
||||
<div class="notreg-card">
|
||||
@@ -60,13 +60,13 @@ if($_SESSION['access'] < ADMIN) die("Access Denied");
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="30">#</th>
|
||||
<th width="40">ID</th>
|
||||
<th>Username</th>
|
||||
<th>Email</th>
|
||||
<th width="70">Tribe</th>
|
||||
<th>Activation Code</th>
|
||||
<th width="60">Act2</th>
|
||||
<th width="110">Time</th>
|
||||
<th width="40"><?php echo ADM_ID; ?></th>
|
||||
<th><?php echo ADM_USERNAME; ?></th>
|
||||
<th><?php echo ADM_EMAIL; ?></th>
|
||||
<th width="70"><?php echo ADM_TRIBE; ?></th>
|
||||
<th><?php echo ADM_ACTIVATION_CODE; ?></th>
|
||||
<th width="60"><?php echo ADM_ACT2; ?></th>
|
||||
<th width="110"><?php echo ADM_TIME; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@@ -59,12 +59,12 @@ $accessColors = [
|
||||
|
||||
<div class="online-wrap">
|
||||
<div class="online-head">
|
||||
<h1>🟢 Online Users</h1>
|
||||
<h1><?php echo ADM_ONLINE_USERS_H; ?></h1>
|
||||
<div class="count"><?php echo $count;?> now</div>
|
||||
</div>
|
||||
|
||||
<?php if(!$active){?>
|
||||
<div class="empty-box">No online users in last 5 minutes</div>
|
||||
<div class="empty-box"><?php echo ADM_NO_ONLINE_USERS; ?></div>
|
||||
<?php } else {?>
|
||||
<div class="online-grid">
|
||||
<?php foreach($active as $u){
|
||||
|
||||
@@ -121,10 +121,10 @@ if($deletion){
|
||||
<th colspan="4">Ban History (<?php echo $numbans; ?>)</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="hab"><b>Start</b></td>
|
||||
<td class="hab"><b>End</b></td>
|
||||
<td class="hab"><b>Duration</b></td>
|
||||
<td class="on"><b>Reason</b></td>
|
||||
<td class="hab"><b><?php echo ADM_START; ?></b></td>
|
||||
<td class="hab"><b><?php echo ADM_END; ?></b></td>
|
||||
<td class="hab"><b><?php echo ADM_DURATION; ?></b></td>
|
||||
<td class="on"><b><?php echo ADM_REASON; ?></b></td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
Additional Information
|
||||
|
||||
<?php if($_SESSION['access'] == ADMIN) { ?>
|
||||
<a href='admin.php?p=editAdditional&uid=<?php echo $id; ?>' class="edit-icon" title="Edit Player Additional Info">
|
||||
<a href='admin.php?p=editAdditional&uid=<?php echo $id; ?>' class="edit-icon" title="<?php echo ADM_EDIT_PLAYER_ADDITIONAL_INFO; ?>">
|
||||
<svg viewBox="0 0 24 24"><path d="M12 20h9"/><path d="M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z"/></svg>
|
||||
</a>
|
||||
<?php } ?>
|
||||
@@ -44,7 +44,7 @@
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Access</td>
|
||||
<td><?php echo ADM_ACCESS; ?></td>
|
||||
<td>
|
||||
<?php
|
||||
if($user['access'] == 0) echo '<span class="badge badge-banned">Banned</span>';
|
||||
@@ -55,23 +55,23 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Vacation Mode</td>
|
||||
<td><?php echo ADM_VACATION_MODE; ?></td>
|
||||
<td><?php echo $user['vac_mode'] ? '<span class="badge badge-on">Enabled</span>' : '<span class="badge badge-off">Disabled</span>'; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gold</td>
|
||||
<td><?php echo ADMIN_GOLD; ?></td>
|
||||
<td><span class="gold-val"><img src="../img/admin/gold.gif"> <?php echo $user['gold']; ?></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Sitter 1</td>
|
||||
<td><?php echo ADM_SITTER_1_2; ?></td>
|
||||
<td><?php echo $user['sit1'] >= 1 ? '<a href="admin.php?p=player&uid='.$user['sit1'].'">'.htmlspecialchars($database->getUserField($user['sit1'],"username",0)).'</a>' : '<span style="color:#94a3b8">No Sitter</span>'; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Sitter 2</td>
|
||||
<td><?php echo ADM_SITTER_2_2; ?></td>
|
||||
<td><?php echo $user['sit2'] >= 1 ? '<a href="admin.php?p=player&uid='.$user['sit2'].'">'.htmlspecialchars($database->getUserField($user['sit2'],"username",0)).'</a>' : '<span style="color:#94a3b8">No Sitter</span>'; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Beginners Protection</td>
|
||||
<td><?php echo ADM_BEGINNERS_PROTECTION; ?></td>
|
||||
<td>
|
||||
<?php
|
||||
$datetime = $user['protect']; $now = time();
|
||||
@@ -85,12 +85,12 @@
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td>Culture Points</td><td><?php echo number_format($user['cp'],0,',','.');?></td></tr>
|
||||
<tr><td>Last Activity</td><td><?php echo date('d.m.Y H:i',$user['timestamp']+3600*2);?></td></tr>
|
||||
<tr><td>Attack Points (This Week)</td><td><?php echo $user['ap'];?></td></tr>
|
||||
<tr><td>Defence Points (This Week)</td><td><?php echo $user['dp'];?></td></tr>
|
||||
<tr><td>Resources Raided (This Week)</td><td><?php echo number_format($user['RR'],0,',','.');?></td></tr>
|
||||
<tr><td>Total Attack Points</td><td><b><?php echo number_format($user['apall'],0,',','.');?></b></td></tr>
|
||||
<tr><td>Total Defence Points</td><td><b><?php echo number_format($user['dpall'],0,',','.');?></b></td></tr>
|
||||
<tr><td><?php echo ADM_CULTURE_POINTS_2; ?></td><td><?php echo number_format($user['cp'],0,',','.');?></td></tr>
|
||||
<tr><td><?php echo ADM_LAST_ACTIVITY; ?></td><td><?php echo date('d.m.Y H:i',$user['timestamp']+3600*2);?></td></tr>
|
||||
<tr><td><?php echo ADM_ATTACK_POINTS_THIS_WEEK; ?></td><td><?php echo $user['ap'];?></td></tr>
|
||||
<tr><td><?php echo ADM_DEFENCE_POINTS_THIS_WEEK; ?></td><td><?php echo $user['dp'];?></td></tr>
|
||||
<tr><td><?php echo ADM_RESOURCES_RAIDED_THIS_WEEK; ?></td><td><?php echo number_format($user['RR'],0,',','.');?></td></tr>
|
||||
<tr><td><?php echo ADM_TOTAL_ATTACK_POINTS; ?></td><td><b><?php echo number_format($user['apall'],0,',','.');?></b></td></tr>
|
||||
<tr><td><?php echo ADM_TOTAL_DEFENCE_POINTS; ?></td><td><b><?php echo number_format($user['dpall'],0,',','.');?></b></td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -1,13 +1,9 @@
|
||||
<div style="background:#fff8e6; border:1px solid #ffcc80; color:#333; padding:12px 16px; margin:12px 0; border-radius:10px; display:flex; justify-content:space-between; align-items:center; font-size:14px;">
|
||||
<div>
|
||||
<i class="fa fa-exclamation-triangle" style="color:#e67e22; margin-right:6px;"></i>
|
||||
The account will be deleted in
|
||||
<strong style="color:#e67e22;"><?php echo $delTime; ?></strong>
|
||||
<i class="fa fa-exclamation-triangle" style="color:#e67e22; margin-right:6px;"></i><?php echo ADM_THE_ACCOUNT_WILL_BE_DELETED_IN; ?><strong style="color:#e67e22;"><?php echo $delTime; ?></strong>
|
||||
</div>
|
||||
<a href="?p=player&uid=<?php echo $user['id']; ?>&action=StopDel"
|
||||
onclick="return confirm('Cancel deletion for <?php echo htmlspecialchars(addslashes($user['username'])); ?>?');"
|
||||
title="Cancel deletion"
|
||||
style="background:#e74c3c; color:#fff; text-decoration:none; padding:6px 10px; border-radius:6px; font-weight:bold;">
|
||||
✖ Cancel
|
||||
</a>
|
||||
title="<?php echo ADM_CANCEL_DELETION; ?>"
|
||||
style="background:#e74c3c; color:#fff; text-decoration:none; padding:6px 10px; border-radius:6px; font-weight:bold;"><?php echo ADM_CANCEL_3; ?></a>
|
||||
</div>
|
||||
@@ -64,13 +64,12 @@ if ($hero !== false) {
|
||||
<div class="hero-wrap">
|
||||
<table class="hero-table">
|
||||
<thead>
|
||||
<tr><th colspan="3" class="hero-head">Player Heroes</th></tr>
|
||||
<tr><th colspan="3" class="hero-head"><?php echo ADM_PLAYER_HEROES; ?></th></tr>
|
||||
</thead>
|
||||
|
||||
<?php if ($hero === false) {?>
|
||||
<tr>
|
||||
<td colspan="3" align="center" class="add-hero">
|
||||
None <span style="color:#2563eb;font-weight:600">Add Hero</span>
|
||||
<td colspan="3" align="center" class="add-hero"><?php echo ADM_NONE_3; ?><span style="color:#2563eb;font-weight:600"><?php echo ADM_ADD_HERO; ?></span>
|
||||
<?php
|
||||
$utribe=($user['tribe']-1)*10;
|
||||
// Sloturile 1-6 care au erou definit in hero_full.php (generic pentru toate triburile)
|
||||
@@ -87,37 +86,37 @@ if ($hero !== false) {
|
||||
foreach ($hero as $h) { ?>
|
||||
<tr><td colspan="3" class="hero-sub" style="text-align:center">Hero #<?php echo $x++; ?></td></tr>
|
||||
<tr>
|
||||
<td width="35%">Hero Name</td>
|
||||
<td width="35%"><?php echo ADM_HERO_NAME; ?></td>
|
||||
<td colspan="2" class="hero-name"><?php echo htmlspecialchars($h['name']); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Hero Level</td>
|
||||
<td><?php echo ADM_HERO_LEVEL; ?></td>
|
||||
<td colspan="2"><?php echo $h['level']; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Hero Unit</td>
|
||||
<td><?php echo ADM_HERO_UNIT; ?></td>
|
||||
<td colspan="2" class="hero-unit"><?php echo "<img class=\"unit u".$h['unit']."\" src=\"img/x.gif\" alt=\"".$technology->getUnitName($h['unit'])."\" title=\"".$technology->getUnitName($h['unit'])."\" /> ".$technology->getUnitName($h['unit']); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Status</td>
|
||||
<td><?php echo ADM_STATUS; ?></td>
|
||||
<td colspan="2" class="hero-actions">
|
||||
<?php if (!$h['dead']) { ?>
|
||||
<span class="badge badge-alive">Alive</span>
|
||||
<a class="hero-icon edit" href='admin.php?p=editHero&uid=<?php echo $id; ?>&hid=<?php echo $h['heroid'] ?>' title="Edit">
|
||||
<span class="badge badge-alive"><?php echo ADM_ALIVE; ?></span>
|
||||
<a class="hero-icon edit" href='admin.php?p=editHero&uid=<?php echo $id; ?>&hid=<?php echo $h['heroid'] ?>' title="<?php echo ADM_EDIT; ?>">
|
||||
<svg viewBox="0 0 24 24"><path d="M12 20h9"/><path d="M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z"/></svg>
|
||||
</a>
|
||||
<?php if (defined('NEW_FUNCTIONS_HERO_T4') && NEW_FUNCTIONS_HERO_T4) { ?>
|
||||
<a class="hero-icon edit" href='admin.php?p=editHeroT4&uid=<?php echo $id; ?>' title="T4 items / silver / auctions">
|
||||
<a class="hero-icon edit" href='admin.php?p=editHeroT4&uid=<?php echo $id; ?>' title="<?php echo ADM_T4_ITEMS_SILVER_AUCTIONS; ?>">
|
||||
<svg viewBox="0 0 24 24"><path d="M6 2l1.5 4h9L18 2"/><path d="M4 6h16l-2 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L4 6z"/></svg>
|
||||
</a>
|
||||
<?php } ?>
|
||||
<a class="hero-icon kill" href='?action=killHero&uid=<?php echo $id; ?>' title="Kill">
|
||||
<a class="hero-icon kill" href='?action=killHero&uid=<?php echo $id; ?>' title="<?php echo ADM_KILL; ?>">
|
||||
<svg viewBox="0 0 24 24"><path d="M3 6h18M8 6V4h8v2m-1 0v14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2V6h10z"/></svg>
|
||||
</a>
|
||||
<?php } else { ?>
|
||||
<span class="badge badge-dead">Dead</span>
|
||||
<span class="badge badge-dead"><?php echo ADM_DEAD; ?></span>
|
||||
<?php if ($heroAliveIndex === -1) { ?>
|
||||
<a class="hero-icon revive" href="?action=reviveHero&uid=<?php echo $id;?>&hid=<?php echo $h['heroid'] ?>" title="Revive">
|
||||
<a class="hero-icon revive" href="?action=reviveHero&uid=<?php echo $id;?>&hid=<?php echo $h['heroid'] ?>" title="<?php echo ADM_REVIVE; ?>">
|
||||
<svg viewBox="0 0 24 24"><path d="M21 12a9 9 0 1 1-3-6.7"/><path d="M21 3v6h-6"/></svg>
|
||||
</a>
|
||||
<?php } else { echo '<span style="color:#64748b;font-size:11px">(kill living hero first)</span>'; } ?>
|
||||
@@ -126,12 +125,12 @@ if ($hero !== false) {
|
||||
</tr>
|
||||
|
||||
<?php if (!$h['dead']) { ?>
|
||||
<tr><th>Details</th><th>Point</th><th>Level</th></tr>
|
||||
<tr><td>Offence</td><td><?php echo $h['atk']; ?></td><td><?php echo $h['attack']; ?></td></tr>
|
||||
<tr><td>Defence</td><td><?php echo $h['di']."/".$h['dc']; ?></td><td><?php echo $h['defence']; ?></td></tr>
|
||||
<tr><td>Off-Bonus</td><td><?php echo ($h['ob']-1)*100; ?>%</td><td><?php echo $h['attackbonus']; ?></td></tr>
|
||||
<tr><td>Def-Bonus</td><td><?php echo ($h['db']-1)*100; ?>%</td><td><?php echo $h['defencebonus']; ?></td></tr>
|
||||
<tr><td>Regeneration</td><td><?php echo min(100,$h['regeneration'])*5*SPEED; ?>/Day</td><td><?php echo $h['regeneration']; ?></td></tr>
|
||||
<tr><th><?php echo ADM_DETAILS; ?></th><th><?php echo ADM_POINT; ?></th><th><?php echo ADM_LEVEL_2; ?></th></tr>
|
||||
<tr><td><?php echo ADM_OFFENCE_2; ?></td><td><?php echo $h['atk']; ?></td><td><?php echo $h['attack']; ?></td></tr>
|
||||
<tr><td><?php echo ADM_DEFENCE_2; ?></td><td><?php echo $h['di']."/".$h['dc']; ?></td><td><?php echo $h['defence']; ?></td></tr>
|
||||
<tr><td><?php echo ADM_OFF_BONUS_2; ?></td><td><?php echo ($h['ob']-1)*100; ?>%</td><td><?php echo $h['attackbonus']; ?></td></tr>
|
||||
<tr><td><?php echo ADM_DEF_BONUS_2; ?></td><td><?php echo ($h['db']-1)*100; ?>%</td><td><?php echo $h['defencebonus']; ?></td></tr>
|
||||
<tr><td><?php echo ADM_REGENERATION; ?></td><td><?php echo min(100,$h['regeneration'])*5*SPEED; ?>/Day</td><td><?php echo $h['regeneration']; ?></td></tr>
|
||||
<?php if (defined('NEW_FUNCTIONS_HERO_T4') && NEW_FUNCTIONS_HERO_T4) {
|
||||
$hResPoints = (int) ($h['resources'] ?? 0);
|
||||
$hResType = (int) ($h['res_type'] ?? 0);
|
||||
@@ -142,7 +141,7 @@ if ($hero !== false) {
|
||||
? (int) round($hResPoints * $hPerOne * SPEED)
|
||||
: (int) round($hResPoints * $hPerAll * SPEED);
|
||||
?>
|
||||
<tr><td>Resources</td><td><?php echo $hResAmount; ?>/h (<?php echo $hResNames[$hResType] ?? 'all'; ?>)</td><td><?php echo $hResPoints; ?></td></tr>
|
||||
<tr><td><?php echo ADM_RESOURCES_2; ?></td><td><?php echo $hResAmount; ?>/h (<?php echo $hResNames[$hResType] ?? 'all'; ?>)</td><td><?php echo $hResPoints; ?></td></tr>
|
||||
<?php } ?>
|
||||
<tr>
|
||||
<?php
|
||||
@@ -173,7 +172,7 @@ if ($hero !== false) {
|
||||
<td>Experience: <?php echo $expPct; ?>%</td>
|
||||
<td colspan="2"><?php echo $h['points']; ?><div class="hero-bar"><div class="hero-bar-fill" style="width:<?php echo $expPct; ?>%"></div></div></td>
|
||||
</tr>
|
||||
<tr><td>Health</td><td colspan="2"><?php echo round($h['health']); ?>%<div class="hero-bar"><div class="hero-bar-fill" style="width:<?php echo round($h['health']); ?>%"></div></div></td></tr>
|
||||
<tr><td><?php echo ADM_HEALTH_2; ?></td><td colspan="2"><?php echo round($h['health']); ?>%<div class="hero-bar"><div class="hero-bar-fill" style="width:<?php echo round($h['health']); ?>%"></div></div></td></tr>
|
||||
<tr><td colspan="3" style="height:8px;background:#f8fafc"></td></tr>
|
||||
<?php } else { ?>
|
||||
<tr><td colspan="3" style="height:8px;background:#f8fafc"></td></tr>
|
||||
|
||||
@@ -48,11 +48,11 @@
|
||||
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="2">Player <a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></th>
|
||||
<th colspan="2"><?php echo ADM_PLAYER_2; ?><a href="admin.php?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Details</td>
|
||||
<td>Description</td>
|
||||
<td><?php echo ADM_DETAILS; ?></td>
|
||||
<td><?php echo ADM_DESCRIPTION; ?></td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -63,11 +63,11 @@
|
||||
<td class="details">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<th>Rank</th>
|
||||
<th><?php echo ADM_RANK; ?></th>
|
||||
<td><?php $ranking->procRankArray();echo $ranking->getUserRank($user['id']);?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Tribe</th>
|
||||
<th><?php echo ADM_TRIBE; ?></th>
|
||||
<td>
|
||||
<?php
|
||||
if($user['tribe'] == 1) { echo '<span class="badge-tribe">Roman</span>'; }
|
||||
@@ -83,7 +83,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Alliance</th>
|
||||
<th><?php echo ADMIN_ALLIANCE; ?></th>
|
||||
<td>
|
||||
<?php
|
||||
if($user['alliance'] == 0) { echo "-"; }
|
||||
@@ -92,13 +92,13 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Villages</th>
|
||||
<th><?php echo ADM_VILLAGES; ?></th>
|
||||
<td><?php echo count($varray);?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Population</th>
|
||||
<th><?php echo ADM_POPULATION; ?></th>
|
||||
<td><?php echo number_format($totalpop,0,',','.'); ?>
|
||||
<a href="?action=recountPopUsr&uid=<?php echo $user['id'];?>" title="Recount population" style="margin-left:6px;vertical-align:middle;display:inline-flex">
|
||||
<a href="?action=recountPopUsr&uid=<?php echo $user['id'];?>" title="<?php echo ADM_RECOUNT_POPULATION; ?>" style="margin-left:6px;vertical-align:middle;display:inline-flex">
|
||||
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#64748b" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||||
<path d="M21 12a9 9 0 1 1-3-6.7"/>
|
||||
<path d="M21 3v6h-6"/>
|
||||
@@ -107,7 +107,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Age</th>
|
||||
<th><?php echo ADM_AGE; ?></th>
|
||||
<td>
|
||||
<?php
|
||||
if(isset($user['birthday']) && $user['birthday']!= 0) {
|
||||
@@ -120,7 +120,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Gender</th>
|
||||
<th><?php echo ADM_GENDER; ?></th>
|
||||
<td>
|
||||
<?php
|
||||
if(isset($user['gender']) && $user['gender']!= 0) {
|
||||
@@ -134,21 +134,21 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Username</th>
|
||||
<th><?php echo ADM_USERNAME; ?></th>
|
||||
<td><?php echo htmlspecialchars($user['username']?? '');?></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Location</th>
|
||||
<th><?php echo ADM_LOCATION_2; ?></th>
|
||||
<td><?php echo htmlspecialchars($user['location']?? '');?></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Password</th>
|
||||
<th><?php echo ADM_PASSWORD; ?></th>
|
||||
<td>•••••••</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Last IP</th>
|
||||
<th><?php echo ADM_LAST_IP; ?></th>
|
||||
<td>
|
||||
<?php
|
||||
$uid = (int)$user['id'];
|
||||
@@ -164,7 +164,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Language</th>
|
||||
<th><?php echo ADM_LANGUAGE; ?></th>
|
||||
<td>
|
||||
<?php
|
||||
// map language
|
||||
@@ -184,12 +184,12 @@
|
||||
<tr>
|
||||
<?php include("playerplusbonus.tpl");?>
|
||||
</tr>
|
||||
<th>Email</th>
|
||||
<th><?php echo ADM_EMAIL; ?></th>
|
||||
<td><?php echo htmlspecialchars($user['email']?? '');?></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Quest</th>
|
||||
<th><?php echo ADM_QUEST_2; ?></th>
|
||||
<td>
|
||||
<?php
|
||||
$quest = $user['quest'];
|
||||
@@ -243,18 +243,18 @@
|
||||
}
|
||||
?>
|
||||
|
||||
<tr><td colspan="2"><a href="?p=ban&uid=<?php echo $user['id'];?>">» Ban User</a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=Newmessage&uid=<?php echo $user['id'];?>">» Send Message</a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=ban&uid=<?php echo $user['id'];?>"><?php echo ADM_BAN_USER_2; ?></a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=Newmessage&uid=<?php echo $user['id'];?>"><?php echo ADM_SEND_MESSAGE_2; ?></a></td></tr>
|
||||
<?php if($_SESSION['access'] == ADMIN) { ?>
|
||||
<tr><td colspan="2"><a href="?p=editPlus&uid=<?php echo $user['id'];?>">» Edit Plus & Res Bonus</a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editSitter&uid=<?php echo $user['id'];?>">» Edit Sitters</a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editProtection&uid=<?php echo $user['id'];?>">» Edit Protection</a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editPassword&uid=<?php echo $user['id'];?>">» Edit Password</a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editOverall&uid=<?php echo $user['id'];?>">» Edit Overall Off & Def</a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editWeek&uid=<?php echo $user['id'];?>">» Edit Weekly Off, Def, Raid</a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editPlus&uid=<?php echo $user['id'];?>"><?php echo ADM_EDIT_PLUS_RES_BONUS; ?></a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editSitter&uid=<?php echo $user['id'];?>"><?php echo ADM_EDIT_SITTERS_2; ?></a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editProtection&uid=<?php echo $user['id'];?>"><?php echo ADM_EDIT_PROTECTION; ?></a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editPassword&uid=<?php echo $user['id'];?>"><?php echo ADM_EDIT_PASSWORD; ?></a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editOverall&uid=<?php echo $user['id'];?>"><?php echo ADM_EDIT_OVERALL_OFF_DEF; ?></a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=editWeek&uid=<?php echo $user['id'];?>"><?php echo ADM_EDIT_WEEKLY_OFF_DEF_RAID; ?></a></td></tr>
|
||||
<?php } ?>
|
||||
<tr><td colspan="2"><a href="?p=userlogin&uid=<?php echo $user['id'];?>">» User Login Log</a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=userillegallog&uid=<?php echo $user['id'];?>">» User Illegal Log</a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=userlogin&uid=<?php echo $user['id'];?>"><?php echo ADM_USER_LOGIN_LOG; ?></a></td></tr>
|
||||
<tr><td colspan="2"><a href="?p=userillegallog&uid=<?php echo $user['id'];?>"><?php echo ADM_USER_ILLEGAL_LOG; ?></a></td></tr>
|
||||
<tr>
|
||||
<td colspan="2" class="desc2">
|
||||
<div class="desc2div">
|
||||
|
||||
@@ -18,16 +18,16 @@
|
||||
<div class="medals-head">Player Medals (<?php echo sizeof($varmedal); ?>)</div>
|
||||
<table class="medals-table">
|
||||
<tr class="head">
|
||||
<td>CATEGORY</td>
|
||||
<td>RANK</td>
|
||||
<td>WEEK</td>
|
||||
<td>POINTS</td>
|
||||
<td>MEDAL</td>
|
||||
<td><?php echo ADM_CATEGORY_2; ?></td>
|
||||
<td><?php echo ADM_RANK_2; ?></td>
|
||||
<td><?php echo ADM_WEEK_2; ?></td>
|
||||
<td><?php echo ADM_POINTS_4; ?></td>
|
||||
<td><?php echo ADM_MEDAL_2; ?></td>
|
||||
<td style="width:30px"></td>
|
||||
</tr>
|
||||
<?php
|
||||
if(empty($varmedal)){ ?>
|
||||
<tr><td colspan="6" class="no-medals">This player has no medals yet</td></tr>
|
||||
<tr><td colspan="6" class="no-medals"><?php echo ADM_THIS_PLAYER_HAS_NO_MEDALS_YET; ?></td></tr>
|
||||
<?php } else {
|
||||
foreach($varmedal as $medal){
|
||||
$title = "Bonus";
|
||||
|
||||
@@ -42,18 +42,18 @@ function fmt_bonus($ts){
|
||||
<td><?php echo fmt_bonus($user['plus']); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><img src="../img/admin/r/1.gif"> Bonus</th>
|
||||
<th><img src="../img/admin/r/1.gif"><?php echo ADM_BONUS; ?></th>
|
||||
<td><?php echo fmt_bonus($user['b1']); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><img src="../img/admin/r/2.gif"> Bonus</th>
|
||||
<th><img src="../img/admin/r/2.gif"><?php echo ADM_BONUS; ?></th>
|
||||
<td><?php echo fmt_bonus($user['b2']); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><img src="../img/admin/r/3.gif"> Bonus</th>
|
||||
<th><img src="../img/admin/r/3.gif"><?php echo ADM_BONUS; ?></th>
|
||||
<td><?php echo fmt_bonus($user['b3']); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><img src="../img/admin/r/4.gif"> Bonus</th>
|
||||
<th><img src="../img/admin/r/4.gif"><?php echo ADM_BONUS; ?></th>
|
||||
<td><?php echo fmt_bonus($user['b4']); ?></td>
|
||||
</tr>
|
||||
@@ -53,7 +53,7 @@ $active = $admin->getUserActive();
|
||||
</style>
|
||||
|
||||
<table class="punish-box">
|
||||
<thead><tr><th>Punish Player</th></tr></thead>
|
||||
<thead><tr><th><?php echo ADM_PUNISH_PLAYER; ?></th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>
|
||||
<form method="post" action="admin.php" style="margin:0">
|
||||
@@ -74,7 +74,7 @@ $active = $admin->getUserActive();
|
||||
<option value="90">90%</option>
|
||||
<option value="100">100%</option>
|
||||
</select>
|
||||
<button type="submit" class="btn-ok">OK</button>
|
||||
<button type="submit" class="btn-ok"><?php echo ADM_OK; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</td></tr>
|
||||
@@ -86,8 +86,8 @@ $active = $admin->getUserActive();
|
||||
<input type="hidden" name="uid" value="<?php echo $user['id'];?>">
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
|
||||
<div class="punish-row">
|
||||
<label><input type="checkbox" name="del_troop" value="1"> <span style="text-decoration:line-through;color:#94a3b8">Delete Troops</span></label>
|
||||
<button type="submit" class="btn-ok">OK</button>
|
||||
<label><input type="checkbox" name="del_troop" value="1"> <span style="text-decoration:line-through;color:#94a3b8"><?php echo ADM_DELETE_TROOPS; ?></span></label>
|
||||
<button type="submit" class="btn-ok"><?php echo ADM_OK; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</td></tr>
|
||||
@@ -99,8 +99,8 @@ $active = $admin->getUserActive();
|
||||
<input type="hidden" name="uid" value="<?php echo $user['id'];?>">
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
|
||||
<div class="punish-row">
|
||||
<label><input type="checkbox" name="clean_ware" value="1"> Empty Warehouses</label>
|
||||
<button type="submit" class="btn-ok">OK</button>
|
||||
<label><input type="checkbox" name="clean_ware" value="1"><?php echo ADM_EMPTY_WAREHOUSES; ?></label>
|
||||
<button type="submit" class="btn-ok"><?php echo ADM_OK; ?></button>
|
||||
</div>
|
||||
</form>
|
||||
</td></tr>
|
||||
|
||||
@@ -60,35 +60,28 @@ function pp_num($n) { return number_format((int)$n); }
|
||||
</style>
|
||||
|
||||
<div class="pp-wrap">
|
||||
<h2>Push Protection <span>Dashboard</span></h2>
|
||||
<p class="pp-intro">
|
||||
Per-player <b>7-day resource balance</b> (received from other players) versus an
|
||||
automatic limit derived from the player's hourly production
|
||||
(<span class="num"><?php echo (int)$data['hours_allowed']; ?>h</span> of production per window).
|
||||
WW villages and artefact villages are flagged as supply exceptions. Set a manual
|
||||
override to exempt a player (WW / trusted) or give a custom cap. Nothing is blocked
|
||||
automatically — this is visibility & control for a human moderator.
|
||||
</p>
|
||||
<h2><?php echo ADMIN_PUSH_PROTECTION; ?><span><?php echo ADM_DASHBOARD; ?></span></h2>
|
||||
<p class="pp-intro"><?php echo ADM_PER_PLAYER; ?><b><?php echo ADM_7_DAY_RESOURCE_BALANCE; ?></b><?php echo ADM_RECEIVED_FROM_OTHER_PLAYERS_VERSUS_AN_AUTOMA; ?><span class="num"><?php echo (int)$data['hours_allowed']; ?>h</span><?php echo ADM_OF_PRODUCTION_PER_WINDOW_WW_VILLAGES_AND_ART; ?></p>
|
||||
|
||||
<form method="get" action="admin.php" class="pp-filter">
|
||||
<input type="hidden" name="p" value="pushprot">
|
||||
<div>
|
||||
<label>Window (days)</label>
|
||||
<label><?php echo ADM_WINDOW_DAYS; ?></label>
|
||||
<input type="number" name="days" min="1" max="30" value="<?php echo (int)$days; ?>">
|
||||
</div>
|
||||
<div>
|
||||
<label>Hours of prod. allowed</label>
|
||||
<label><?php echo ADM_HOURS_OF_PROD_ALLOWED; ?></label>
|
||||
<input type="number" name="hours" min="1" max="168" value="<?php echo (int)$hours; ?>">
|
||||
</div>
|
||||
<div>
|
||||
<label>Show</label>
|
||||
<label><?php echo ADM_SHOW_2; ?></label>
|
||||
<select name="only">
|
||||
<option value="all" <?php echo $only==='all'?'selected':''; ?>>All with activity</option>
|
||||
<option value="over" <?php echo $only==='over'?'selected':''; ?>>Over limit only</option>
|
||||
<option value="flagged" <?php echo $only==='flagged'?'selected':''; ?>>WW / artefact / overridden</option>
|
||||
<option value="all" <?php echo $only==='all'?'selected':''; ?>><?php echo ADM_ALL_WITH_ACTIVITY; ?></option>
|
||||
<option value="over" <?php echo $only==='over'?'selected':''; ?>><?php echo ADM_OVER_LIMIT_ONLY; ?></option>
|
||||
<option value="flagged" <?php echo $only==='flagged'?'selected':''; ?>><?php echo ADM_WW_ARTEFACT_OVERRIDDEN; ?></option>
|
||||
</select>
|
||||
</div>
|
||||
<button type="submit">Refresh</button>
|
||||
<button type="submit"><?php echo ADM_REFRESH_2; ?></button>
|
||||
</form>
|
||||
|
||||
<div class="pp-meta">
|
||||
@@ -98,22 +91,18 @@ function pp_num($n) { return number_format((int)$n); }
|
||||
</div>
|
||||
|
||||
<?php if (empty($rows)): ?>
|
||||
<div class="pp-table"><div class="pp-empty">
|
||||
No inter-player transfers recorded in this window yet.<br>
|
||||
The 7-day balance fills in as merchant deliveries between different players
|
||||
are processed after this feature is deployed.
|
||||
</div></div>
|
||||
<div class="pp-table"><div class="pp-empty"><?php echo ADM_NO_INTER_PLAYER_TRANSFERS_RECORDED_IN_THIS_W; ?><br><?php echo ADM_THE_7_DAY_BALANCE_FILLS_IN_AS_MERCHANT_DELIV; ?></div></div>
|
||||
<?php else: ?>
|
||||
<table class="pp-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Player</th>
|
||||
<th>Villages / Pop</th>
|
||||
<th>Prod/h</th>
|
||||
<th>Received (7d)</th>
|
||||
<th>Limit</th>
|
||||
<th>Usage</th>
|
||||
<th style="width:26%;">Override</th>
|
||||
<th><?php echo ADM_PLAYER_2; ?></th>
|
||||
<th><?php echo ADM_VILLAGES_POP; ?></th>
|
||||
<th><?php echo ADM_PROD_H; ?></th>
|
||||
<th><?php echo ADM_RECEIVED_7D; ?></th>
|
||||
<th><?php echo ADM_LIMIT; ?></th>
|
||||
<th><?php echo ADM_USAGE; ?></th>
|
||||
<th style="width:26%;"><?php echo ADM_OVERRIDE; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -153,13 +142,13 @@ function pp_num($n) { return number_format((int)$n); }
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="uid" value="<?php echo (int)$r['uid']; ?>">
|
||||
<select name="mode">
|
||||
<option value="0" <?php echo $r['ov_mode']==0?'selected':''; ?>>Auto</option>
|
||||
<option value="0" <?php echo $r['ov_mode']==0?'selected':''; ?>><?php echo ADM_AUTO; ?></option>
|
||||
<option value="1" <?php echo $r['ov_mode']==1?'selected':''; ?>>Exempt<?php echo $r['is_ww']?' (WW)':''; ?></option>
|
||||
<option value="3" <?php echo $r['ov_mode']==3?'selected':''; ?>>Custom cap</option>
|
||||
<option value="3" <?php echo $r['ov_mode']==3?'selected':''; ?>><?php echo ADM_CUSTOM_CAP; ?></option>
|
||||
</select>
|
||||
<input class="lim num" type="number" min="0" name="custom_limit" placeholder="cap" value="<?php echo $r['ov_mode']==3 && $r['eff_limit']>0 ? (int)$r['eff_limit'] : ''; ?>">
|
||||
<input class="note" type="text" name="note" maxlength="255" placeholder="note" value="<?php echo e($r['ov_note']); ?>">
|
||||
<button type="submit">Save</button>
|
||||
<button type="submit"><?php echo ADM_SAVE_3; ?></button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -55,29 +55,17 @@ $msg = isset($_GET['msg']) ? (string)$_GET['msg'] : '';
|
||||
</style>
|
||||
|
||||
<div class="qe-wrap">
|
||||
<h2>Quest <span>Editor</span></h2>
|
||||
<p class="qe-intro">
|
||||
Edit the reward each quest grants (wood / clay / iron / crop / gold / Plus days) and
|
||||
the requirement level (e.g. main-building level for building quests). Values are
|
||||
seeded from the shipped defaults, so nothing changes until you edit. The two quest
|
||||
variants have different quests and rewards — pick the one your server uses
|
||||
(players on <code>qtyp 37</code> get <b>extended</b>, everyone else <b>standard</b>).
|
||||
<h2><?php echo ADM_QUEST_2; ?><span><?php echo ADM_EDITOR; ?></span></h2>
|
||||
<p class="qe-intro"><?php echo ADM_EDIT_THE_REWARD_EACH_QUEST_GRANTS_WOOD_CLAY; ?><code><?php echo ADM_QTYP_37; ?></code><?php echo ADM_GET; ?><b><?php echo ADM_EXTENDED; ?></b><?php echo ADM_EVERYONE_ELSE; ?><b><?php echo ADM_STANDARD; ?></b>).
|
||||
</p>
|
||||
|
||||
<?php if ($msg !== ''): ?><div class="qe-msg"><?php echo e($msg); ?></div><?php endif; ?>
|
||||
|
||||
<div class="qe-warn">
|
||||
Reward values are live via <code>QuestConfig::grantReward()</code> in the quest
|
||||
templates. Quests marked <b>fixed</b> keep their original hardcoded logic
|
||||
(conditional rewards, atomic milestone claims, special mechanics) and are not
|
||||
affected by edits here. The reward numbers shown inside each quest's on-screen
|
||||
text are separate template strings — edits here change what is actually
|
||||
granted; update the quest language strings if you want the preview to match.
|
||||
</div>
|
||||
<div class="qe-warn"><?php echo ADM_REWARD_VALUES_ARE_LIVE_VIA; ?><code>QuestConfig::grantReward()</code><?php echo ADM_IN_THE_QUEST_TEMPLATES_QUESTS_MARKED; ?><b><?php echo ADM_FIXED; ?></b><?php echo ADM_KEEP_THEIR_ORIGINAL_HARDCODED_LOGIC_CONDITIO; ?></div>
|
||||
|
||||
<div class="qe-tabs">
|
||||
<a href="admin.php?p=questEditor&variant=standard" class="<?php echo $variant===QuestConfig::V_STANDARD?'active':''; ?>">Standard (quest_core25)</a>
|
||||
<a href="admin.php?p=questEditor&variant=extended" class="<?php echo $variant===QuestConfig::V_EXTENDED?'active':''; ?>">Extended (quest_core)</a>
|
||||
<a href="admin.php?p=questEditor&variant=standard" class="<?php echo $variant===QuestConfig::V_STANDARD?'active':''; ?>"><?php echo ADM_STANDARD_QUEST_CORE25; ?></a>
|
||||
<a href="admin.php?p=questEditor&variant=extended" class="<?php echo $variant===QuestConfig::V_EXTENDED?'active':''; ?>"><?php echo ADM_EXTENDED_QUEST_CORE; ?></a>
|
||||
</div>
|
||||
|
||||
<form method="post" action="../GameEngine/Admin/Mods/questSave.php">
|
||||
@@ -89,17 +77,17 @@ $msg = isset($_GET['msg']) ? (string)$_GET['msg'] : '';
|
||||
<table class="qe-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width:44px;">Quest</th>
|
||||
<th style="width:44px;">On</th>
|
||||
<th>Wood</th><th>Clay</th><th>Iron</th><th>Crop</th>
|
||||
<th>Gold</th><th>Plus (days)</th><th>Req. level</th>
|
||||
<th>Quest (hover)</th>
|
||||
<th style="width:44px;"><?php echo ADM_QUEST_2; ?></th>
|
||||
<th style="width:44px;"><?php echo ADM_ON; ?></th>
|
||||
<th><?php echo ADM_WOOD; ?></th><th><?php echo ADM_CLAY; ?></th><th><?php echo ADM_IRON; ?></th><th><?php echo ADM_CROP; ?></th>
|
||||
<th><?php echo ADMIN_GOLD; ?></th><th><?php echo ADM_PLUS_DAYS; ?></th><th><?php echo ADM_REQ_LEVEL; ?></th>
|
||||
<th><?php echo ADM_QUEST_HOVER; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($rows as $qid => $r): $isNative = in_array((int)$qid, $native, true); $dis = $isNative ? 'disabled' : ''; ?>
|
||||
<tr<?php echo $isNative ? ' style="opacity:.55;"' : ''; ?>>
|
||||
<td class="qe-qid"><?php echo (int)$qid; ?><?php if ($isNative): ?><br><span style="font-size:9px;color:#f59e0b;font-family:Verdana;font-weight:normal;">fixed</span><?php endif; ?></td>
|
||||
<td class="qe-qid"><?php echo (int)$qid; ?><?php if ($isNative): ?><br><span style="font-size:9px;color:#f59e0b;font-family:Verdana;font-weight:normal;"><?php echo ADM_FIXED; ?></span><?php endif; ?></td>
|
||||
<td><input type="checkbox" name="q[<?php echo (int)$qid; ?>][enabled]" value="1" <?php echo ((int)$r['enabled']===1)?'checked':''; ?> <?php echo $dis; ?>></td>
|
||||
<td><input type="number" name="q[<?php echo (int)$qid; ?>][wood]" value="<?php echo (int)$r['wood']; ?>" <?php echo $dis; ?>></td>
|
||||
<td><input type="number" name="q[<?php echo (int)$qid; ?>][clay]" value="<?php echo (int)$r['clay']; ?>" <?php echo $dis; ?>></td>
|
||||
@@ -120,8 +108,8 @@ $msg = isset($_GET['msg']) ? (string)$_GET['msg'] : '';
|
||||
</div>
|
||||
|
||||
<div class="qe-bar">
|
||||
<button type="submit" class="qe-save">Save all changes</button>
|
||||
<span class="qe-note">Saves every row for the <b><?php echo e($variant); ?></b> variant.</span>
|
||||
<button type="submit" class="qe-save"><?php echo ADM_SAVE_ALL_CHANGES; ?></button>
|
||||
<span class="qe-note"><?php echo ADM_SAVES_EVERY_ROW_FOR_THE; ?><b><?php echo e($variant); ?></b><?php echo ADM_VARIANT; ?></span>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
@@ -129,6 +117,6 @@ $msg = isset($_GET['msg']) ? (string)$_GET['msg'] : '';
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="do" value="reset">
|
||||
<input type="hidden" name="variant" value="<?php echo e($variant); ?>">
|
||||
<button type="submit" class="qe-reset">Reset this variant to defaults</button>
|
||||
<button type="submit" class="qe-reset"><?php echo ADM_RESET_THIS_VARIANT_TO_DEFAULTS; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -54,9 +54,9 @@ if($bid > 0){
|
||||
#content.reports td { font-weight:600 !important; }
|
||||
</style>
|
||||
<div style="max-width:900px;margin:20px auto">
|
||||
<a href="?p=report" style="font-size:12px">← Back to reports</a>
|
||||
<a href="?p=report" style="font-size:12px"><?php echo ADM_BACK_TO_REPORTS; ?></a>
|
||||
<div id="content" class="reports" style="margin-top:10px">
|
||||
<h1>Report</h1>
|
||||
<h1><?php echo ADM_REPORT; ?></h1>
|
||||
<?php include("../Templates/Notice/".$message->getReportType($rep['ntype']).".tpl");?>
|
||||
</div>
|
||||
</div>
|
||||
@@ -116,7 +116,7 @@ $typeNames = [1=>'reinforcement',2=>'attack',3=>'defence',4=>'scout',5=>'trade',
|
||||
<form class="search-box" method="get">
|
||||
<input type="hidden" name="p" value="report">
|
||||
<input type="hidden" name="f" value="<?php echo htmlspecialchars($filter);?>">
|
||||
<input type="text" name="q" placeholder="Search..." value="<?php echo htmlspecialchars($search);?>">
|
||||
<input type="text" name="q" placeholder="<?php echo ADM_SEARCH_PH; ?>" value="<?php echo htmlspecialchars($search);?>">
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -137,7 +137,7 @@ $typeNames = [1=>'reinforcement',2=>'attack',3=>'defence',4=>'scout',5=>'trade',
|
||||
<div class="rep-body"><?php echo htmlspecialchars($preview);?>...</div>
|
||||
<div class="rep-foot">
|
||||
<span class="badge <?php echo $type;?>"><?php echo $type;?></span>
|
||||
<span style="color:#666">view →</span>
|
||||
<span style="color:#666"><?php echo ADM_VIEW_ARROW; ?></span>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
@@ -49,15 +49,13 @@
|
||||
<div class="reset-wrap">
|
||||
<div class="reset-card">
|
||||
<div class="reset-head">
|
||||
<h2>⚠️ Server Resetting</h2>
|
||||
<h2><?php echo ADM_SERVER_RESETTING; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="reset-body" id="txtreset">
|
||||
<div class="reset-warning">
|
||||
<strong>WARNING! Irreversible action</strong>
|
||||
This operation will delete ALL data: players, watches, allies, reports. The server will be reset for a new game.
|
||||
</div>
|
||||
<p>This server will be reset to create new game server.<br>Click button <b>Reset</b> to proceed.</p>
|
||||
<strong><?php echo ADM_WARNING_IRREVERSIBLE_ACTION; ?></strong><?php echo ADM_THIS_OPERATION_WILL_DELETE_ALL_DATA_PLAYERS; ?></div>
|
||||
<p><?php echo ADM_THIS_SERVER_WILL_BE_RESET_TO_CREATE_NEW_GAME; ?><br><?php echo ADM_CLICK_BUTTON; ?><b><?php echo ADM_RESET; ?></b><?php echo ADM_TO_PROCEED; ?></p>
|
||||
</div>
|
||||
<!-- BIFA MUTATA AICI, IN AFARA reset-body -->
|
||||
<div class="reset-option">
|
||||
@@ -69,12 +67,12 @@ Keep Admin accout (<?php echo htmlspecialchars($_SESSION['username'] ?? 'Admin')
|
||||
</br></br>
|
||||
<div class="reset-loader" id="resetLoader">
|
||||
<div class="spinner"></div>
|
||||
<div>Please wait... while the server is being reset</div>
|
||||
<div><?php echo ADM_PLEASE_WAIT_WHILE_THE_SERVER_IS_BEING_RESET; ?></div>
|
||||
</div>
|
||||
|
||||
<div class="reset-foot" id="hideobj">
|
||||
<button type="button" class="btn btn-back" onclick="go_url('../Admin/admin.php')">« Back</button>
|
||||
<button type="button" class="btn btn-reset" onclick="go_proceed()">Reset Server</button>
|
||||
<button type="button" class="btn btn-back" onclick="go_url('../Admin/admin.php')"><?php echo ADM_BACK_2; ?></button>
|
||||
<button type="button" class="btn btn-reset" onclick="go_proceed()"><?php echo ADM_RESET_SERVER; ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -38,10 +38,10 @@ $result = $admin->search_alliance($_POST['s']); ?>
|
||||
|
||||
<table class="search-table">
|
||||
<tr>
|
||||
<td>AID</td>
|
||||
<td>NAME</td>
|
||||
<td>TAG</td>
|
||||
<td>FOUNDER</td>
|
||||
<td><?php echo ADM_AID; ?></td>
|
||||
<td><?php echo ADM_NAME_2; ?></td>
|
||||
<td><?php echo ADM_TAG_2; ?></td>
|
||||
<td><?php echo ADM_FOUNDER_2; ?></td>
|
||||
</tr>
|
||||
<?php if($result){
|
||||
for ($i = 0; $i <= count($result)-1; $i++) {
|
||||
|
||||
@@ -37,9 +37,9 @@
|
||||
|
||||
<table class="search-table">
|
||||
<tr>
|
||||
<td>UID</td>
|
||||
<td>NAME</td>
|
||||
<td>EMAIL</td>
|
||||
<td><?php echo ADM_UID_2; ?></td>
|
||||
<td><?php echo ADM_NAME_2; ?></td>
|
||||
<td><?php echo ADM_EMAIL_2; ?></td>
|
||||
</tr>
|
||||
<?php if($result){
|
||||
for ($i = 0; $i <= count($result)-1; $i++) {
|
||||
|
||||
@@ -50,8 +50,8 @@ if($result){
|
||||
|
||||
<table class="search-table">
|
||||
<tr>
|
||||
<td>IP</td>
|
||||
<td>NAME</td>
|
||||
<td><?php echo ADM_IP; ?></td>
|
||||
<td><?php echo ADM_NAME_2; ?></td>
|
||||
</tr>
|
||||
<?php if($rows){
|
||||
foreach($rows as $r){
|
||||
|
||||
@@ -37,10 +37,10 @@
|
||||
|
||||
<table class="search-table">
|
||||
<tr>
|
||||
<td>UID</td>
|
||||
<td>PLAYER</td>
|
||||
<td>VILLAGES</td>
|
||||
<td>POP</td>
|
||||
<td><?php echo ADM_UID_2; ?></td>
|
||||
<td><?php echo ADM_PLAYER_3; ?></td>
|
||||
<td><?php echo ADM_VILLAGES_2; ?></td>
|
||||
<td><?php echo ADM_POP_2; ?></td>
|
||||
</tr>
|
||||
<?php
|
||||
if($result){
|
||||
|
||||
@@ -41,10 +41,10 @@
|
||||
|
||||
<table class="search-table">
|
||||
<tr>
|
||||
<td>ID</td>
|
||||
<td>VILLAGE NAME</td>
|
||||
<td>OWNER</td>
|
||||
<td>POP</td>
|
||||
<td><?php echo ADM_ID; ?></td>
|
||||
<td><?php echo ADM_VILLAGE_NAME; ?></td>
|
||||
<td><?php echo ADM_OWNER_2; ?></td>
|
||||
<td><?php echo ADM_POP_2; ?></td>
|
||||
<td style="width:30px"></td>
|
||||
</tr>
|
||||
<?php if($result){
|
||||
|
||||
@@ -57,7 +57,7 @@ $search = stripslashes($_POST['s']?? '');
|
||||
<circle cx="11" cy="11" r="7" stroke="#555" stroke-width="2"/>
|
||||
<path d="M20 20l-3.5-3.5" stroke="#555" stroke-width="2" stroke-linecap="round"/>
|
||||
</svg>
|
||||
<h2>Admin Search</h2>
|
||||
<h2><?php echo ADM_ADMIN_SEARCH; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="search-card">
|
||||
@@ -68,8 +68,8 @@ $search = stripslashes($_POST['s']?? '');
|
||||
<option value="<?php echo $k;?>" <?php echo $current==$k?'selected':'';?>><?php echo $v[1].' '.$v[0];?></option>
|
||||
<?php }?>
|
||||
</select>
|
||||
<input type="text" name="s" placeholder="Enter name, ID, email or IP..." value="<?php echo htmlspecialchars($search);?>" autofocus>
|
||||
<input type="submit" value="Search">
|
||||
<input type="text" name="s" placeholder="<?php echo ADM_SEARCH_HINT; ?>" value="<?php echo htmlspecialchars($search);?>" autofocus>
|
||||
<input type="submit" value="<?php echo ADM_SEARCH_BTN; ?>">
|
||||
</form>
|
||||
|
||||
<div class="quick-types">
|
||||
|
||||
@@ -47,23 +47,23 @@ foreach($varray as $vil) $totalpop += $vil['pop'];
|
||||
<table id="member" class="search-modern">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="3">Search <font>("<?php echo htmlspecialchars($user['username']); ?>" = <?php echo $numsimplayers; ?> Similar)</font></th>
|
||||
<th colspan="3"><?php echo ADMIN_SEARCH; ?><font>("<?php echo htmlspecialchars($user['username']); ?>" = <?php echo $numsimplayers; ?> Similar)</font></th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
|
||||
<div class="s-info-wrap">
|
||||
<div class="s-card">
|
||||
<div class="s-card-title">Player</div>
|
||||
<div class="s-card-title"><?php echo ADM_PLAYER_2; ?></div>
|
||||
<div class="s-card-main"><a href="?p=player&uid=<?php echo $user['id'];?>"><?php echo htmlspecialchars($user['username']);?></a> <span style="color:#94a3b8;font-weight:500">(uid: <?php echo $user['id'];?>)</span></div>
|
||||
<div class="s-card-sub"><b>Tribe:</b> <?php echo $tribename; ?> • <b>Villages:</b> <?php echo count($varray);?> • <b>Pop:</b> <?php echo number_format($totalpop,0,',','.'); ?></div>
|
||||
<div class="s-card-sub"><b><?php echo ADM_TRIBE_3; ?></b> <?php echo $tribename; ?> • <b><?php echo ADM_VILLAGES_3; ?></b> <?php echo count($varray);?> • <b><?php echo ADM_POP_3; ?></b> <?php echo number_format($totalpop,0,',','.'); ?></div>
|
||||
</div>
|
||||
|
||||
<?php if(isset($_GET['did']) && isset($village)) { ?>
|
||||
<div class="s-card">
|
||||
<div class="s-card-title">Village</div>
|
||||
<div class="s-card-title"><?php echo ADM_VILLAGE; ?></div>
|
||||
<div class="s-card-main"><a href="?p=village&did=<?php echo $village['wref'];?>"><?php echo htmlspecialchars($village['name']);?></a> <span style="color:#94a3b8;font-weight:500">(did: <?php echo $village['wref'];?>)</span></div>
|
||||
<div class="s-card-sub"><b>Coords:</b> (<?php echo $coor['x'];?>|<?php echo $coor['y'];?>) • <b>Pop:</b> <?php echo $village['pop'];?></div>
|
||||
<div class="s-card-sub"><b><?php echo ADM_COORDS_2; ?></b> (<?php echo $coor['x'];?>|<?php echo $coor['y'];?>) • <b><?php echo ADM_POP_3; ?></b> <?php echo $village['pop'];?></div>
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
|
||||
@@ -75,17 +75,17 @@ $ue = q1("SELECT ".implode(',',$cells)." FROM ".TB_PREFIX."enforcement");
|
||||
|
||||
<div class="sinfo-grid">
|
||||
<div class="scard">
|
||||
<h3>🌍 World Information</h3>
|
||||
<div class="row"><span>Registered players</span><span class="val"><?php echo number_format($users); ?></span></div>
|
||||
<div class="row"><span>Active players</span><span class="val"><?php echo $active; ?></span></div>
|
||||
<div class="row"><span>Players online</span><span class="val" style="color:#27ae60"><?php echo $online; ?></span></div>
|
||||
<div class="row"><span>Players banned</span><span class="val" style="color:#c0392b"><?php echo $banned; ?></span></div>
|
||||
<div class="row"><span>Villages settled</span><span class="val"><?php echo number_format($villages); ?></span></div>
|
||||
<div class="row"><span>Total population</span><span class="val"><?php echo number_format($pop); ?></span></div>
|
||||
<h3><?php echo ADM_WORLD_INFO; ?></h3>
|
||||
<div class="row"><span><?php echo ADM_REGISTERED_PLAYERS; ?></span><span class="val"><?php echo number_format($users); ?></span></div>
|
||||
<div class="row"><span><?php echo ADM_ACTIVE_PLAYERS; ?></span><span class="val"><?php echo $active; ?></span></div>
|
||||
<div class="row"><span><?php echo ADM_PLAYERS_ONLINE; ?></span><span class="val" style="color:#27ae60"><?php echo $online; ?></span></div>
|
||||
<div class="row"><span><?php echo ADM_PLAYERS_BANNED; ?></span><span class="val" style="color:#c0392b"><?php echo $banned; ?></span></div>
|
||||
<div class="row"><span><?php echo ADM_VILLAGES_SETTLED; ?></span><span class="val"><?php echo number_format($villages); ?></span></div>
|
||||
<div class="row"><span><?php echo ADM_TOTAL_POPULATION; ?></span><span class="val"><?php echo number_format($pop); ?></span></div>
|
||||
</div>
|
||||
|
||||
<div class="scard">
|
||||
<h3>👥 Player Distribution</h3>
|
||||
<h3><?php echo ADM_PLAYER_DISTRIBUTION; ?></h3>
|
||||
<?php $names=[1=>'Romans',2=>'Teutons',3=>'Gauls',6=>'Huns',7=>'Egyptians',8=>'Spartans',9=>'Vikings']; $colors=[1=>'romans',2=>'teutons',3=>'gauls',6=>'huns',7=>'egyptians',8=>'spartans',9=>'vikings'];
|
||||
foreach($names as $id=>$name){
|
||||
$pct = $users ? round($tribes[$id]/$users*100,1) : 0;
|
||||
@@ -95,16 +95,16 @@ $ue = q1("SELECT ".implode(',',$cells)." FROM ".TB_PREFIX."enforcement");
|
||||
</div>
|
||||
|
||||
<div class="scard">
|
||||
<h3>💰 Server Economy</h3>
|
||||
<div class="row"><span><img src="../<?php echo GP_LOCATE; ?>img/a/gold.gif"> Total Gold</span><span class="val"><?php echo number_format($gold); ?></span></div>
|
||||
<div class="row"><span>Avg Gold/player</span><span class="val"><?php echo $users ? number_format($gold/$users,0) : 0; ?></span></div>
|
||||
<div class="row"><span>Server started</span><span class="val"><?php echo defined('START_DATE') ? date('d.m.Y', strtotime(START_DATE)) : '-'; ?></span></div>
|
||||
<div class="row"><span>Uptime</span><span class="val"><?php echo defined('START_DATE') ? floor((time()-strtotime(START_DATE))/86400).' days' : '-'; ?></span></div>
|
||||
<h3><?php echo ADM_SERVER_ECONOMY; ?></h3>
|
||||
<div class="row"><span><img src="../<?php echo GP_LOCATE; ?>img/a/gold.gif"><?php echo ADM_TOTAL_GOLD; ?></span><span class="val"><?php echo number_format($gold); ?></span></div>
|
||||
<div class="row"><span><?php echo ADM_AVG_GOLD; ?></span><span class="val"><?php echo $users ? number_format($gold/$users,0) : 0; ?></span></div>
|
||||
<div class="row"><span><?php echo ADM_SERVER_STARTED; ?></span><span class="val"><?php echo defined('START_DATE') ? date('d.m.Y', strtotime(START_DATE)) : '-'; ?></span></div>
|
||||
<div class="row"><span><?php echo ADM_UPTIME; ?></span><span class="val"><?php echo defined('START_DATE') ? floor((time()-strtotime(START_DATE))/86400).' days' : '-'; ?></span></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="troops-wrap">
|
||||
<h3 style="margin:0 0 10px;font-size:14px">⚔️ Troops on Server (villages + reinforcements)</h3>
|
||||
<h3 style="margin:0 0 10px;font-size:14px"><?php echo ADM_TROOPS_ON_SERVER; ?></h3>
|
||||
<div class="troops-grid">
|
||||
<?php
|
||||
$tribesUnits = [
|
||||
|
||||
@@ -71,7 +71,7 @@ $_SESSION['sys_color'] = $_SESSION['sys_color'] ?? 'black';
|
||||
|
||||
<div class="sysmsg-head">
|
||||
<svg viewBox="0 0 24 24"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z" fill="#8e44ad"/></svg>
|
||||
<h2>System Message</h2>
|
||||
<h2><?php echo ADMIN_SYSTEM_MESSAGE; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="sysmsg-card">
|
||||
@@ -79,8 +79,8 @@ $_SESSION['sys_color'] = $_SESSION['sys_color'] ?? 'black';
|
||||
<?php if(isset($_GET['confirm'])): ?>
|
||||
|
||||
<div class="sysmsg-confirm">
|
||||
<b>Confirmare system message</b><br><br>
|
||||
<b>Color:</b> <span style="color:<?=htmlspecialchars($_SESSION['sys_color'])?>">
|
||||
<b><?php echo ADM_CONFIRMARE_SYSTEM_MESSAGE; ?></b><br><br>
|
||||
<b><?php echo ADM_COLOR; ?></b> <span style="color:<?=htmlspecialchars($_SESSION['sys_color'])?>">
|
||||
<?=htmlspecialchars($_SESSION['sys_subject'])?>
|
||||
</span>
|
||||
<br><br>
|
||||
@@ -92,14 +92,14 @@ $_SESSION['sys_color'] = $_SESSION['sys_color'] ?? 'black';
|
||||
<input type="hidden" name="admid" value="<?=$id?>">
|
||||
<input type="hidden" name="action" value="execute">
|
||||
|
||||
<button type="submit" name="confirm" value="Yes" style="background:#27ae60">✓ Send System Message</button>
|
||||
<button type="submit" name="confirm" value="No" style="background:#95a5a6;margin-top:8px">Cancel</button>
|
||||
<button type="submit" name="confirm" value="Yes" style="background:#27ae60"><?php echo ADM_SEND_SYSTEM_MESSAGE; ?></button>
|
||||
<button type="submit" name="confirm" value="No" style="background:#95a5a6;margin-top:8px"><?php echo ADM_CANCEL; ?></button>
|
||||
</form>
|
||||
|
||||
<?php elseif(isset($_GET['sending'])): ?>
|
||||
|
||||
<div style="text-align:center;padding:30px">
|
||||
<div style="font-size:16px;margin-bottom:10px">Sending system message...</div>
|
||||
<div style="font-size:16px;margin-bottom:10px"><?php echo ADM_SENDING_SYSTEM_MESSAGE; ?></div>
|
||||
</div>
|
||||
|
||||
<?php else: ?>
|
||||
@@ -110,28 +110,28 @@ $_SESSION['sys_color'] = $_SESSION['sys_color'] ?? 'black';
|
||||
<input type="hidden" name="action" value="prepare">
|
||||
|
||||
<div class="field">
|
||||
<label>Subject</label>
|
||||
<label><?php echo ADM_SUBJECT_2; ?></label>
|
||||
<input type="text" name="subject" required maxlength="100">
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label>Color</label>
|
||||
<label><?php echo ADM_COLOR_2; ?></label>
|
||||
<input type="text" name="color" value="black">
|
||||
</div>
|
||||
|
||||
<div class="field full">
|
||||
<label>Message</label>
|
||||
<label><?php echo ADM_MESSAGE; ?></label>
|
||||
<textarea name="message" rows="12" required></textarea>
|
||||
</div>
|
||||
|
||||
<button type="submit">Continue</button>
|
||||
<button type="submit"><?php echo ADM_CONTINUE; ?></button>
|
||||
|
||||
</form>
|
||||
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if(isset($_GET['done'])): ?>
|
||||
<div class="sysmsg-success">✓ System message sent successfully</div>
|
||||
<div class="sysmsg-success"><?php echo ADM_SYSTEM_MESSAGE_SENT_SUCCESSFULLY; ?></div>
|
||||
<?php endif; ?>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -48,26 +48,26 @@ $logs = $database->query("SELECT * FROM ".TB_PREFIX."tech_log WHERE wid = $id OR
|
||||
</style>
|
||||
|
||||
<div class="tlog-wrap">
|
||||
<a href="admin.php?p=village&did=<?php echo $id; ?>" class="back-btn">← Back to Village</a>
|
||||
<a href="admin.php?p=village&did=<?php echo $id; ?>" class="back-btn"><?php echo ADM_BACK_TO_VILLAGE; ?></a>
|
||||
|
||||
<div class="tlog-head">
|
||||
<div class="icon">🔬</div>
|
||||
<div>
|
||||
<h2><?php echo htmlspecialchars($village['name']); ?> <span style="opacity:.7">— Research Log</span></h2>
|
||||
<span>Latest 200 searches</span>
|
||||
<h2><?php echo htmlspecialchars($village['name']); ?> <span style="opacity:.7"><?php echo ADM_RESEARCH_LOG; ?></span></h2>
|
||||
<span><?php echo ADM_LATEST_200_SEARCHES; ?></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tlog-card">
|
||||
<?php if(mysqli_num_rows($logs) == 0): ?>
|
||||
<div class="empty">No registered searches.</div>
|
||||
<div class="empty"><?php echo ADM_NO_REGISTERED_SEARCHES; ?></div>
|
||||
<?php else: ?>
|
||||
<table class="tlog-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="tlog-num">#</th>
|
||||
<th>Event</th>
|
||||
<th class="tlog-date">Data</th>
|
||||
<th><?php echo ADM_EVENT; ?></th>
|
||||
<th class="tlog-date"><?php echo ADM_DATA; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -82,7 +82,7 @@ $logs = $database->query("SELECT * FROM ".TB_PREFIX."tech_log WHERE wid = $id OR
|
||||
?>
|
||||
<tr>
|
||||
<td class="tlog-num"><?php echo $i--; ?></td>
|
||||
<td><span class="badge <?php echo $badge; ?>">TECH</span> <?php echo $log; ?></td>
|
||||
<td><span class="badge <?php echo $badge; ?>"><?php echo ADM_TECH; ?></span> <?php echo $log; ?></td>
|
||||
<td class="tlog-date"><?php echo $date; ?></td>
|
||||
</tr>
|
||||
<?php endwhile; ?>
|
||||
|
||||
@@ -37,7 +37,7 @@ $img = $tribe==1 ? "" : $tribe-1;
|
||||
</style>
|
||||
|
||||
<div class="upg-modern">
|
||||
<div class="upg-head"><div>Armoury</div><div>Blacksmith</div></div>
|
||||
<div class="upg-head"><div><?php echo ADM_ARMOURY; ?></div><div><?php echo ADM_BLACKSMITH; ?></div></div>
|
||||
<div class="upg-icons">
|
||||
<?php for($i=1;$i<9;$i++) echo '<img src="../img/un/u/'.$img.$i.'.gif">'; for($i=1;$i<9;$i++) echo '<img src="../img/un/u/'.$img.$i.'.gif">'; ?>
|
||||
</div>
|
||||
@@ -58,7 +58,7 @@ $img = $tribe==1 ? "" : $tribe-1;
|
||||
<?php if($_SESSION['access']==ADMIN){ ?>
|
||||
<div class="upg-foot">
|
||||
<?php if($tribe==5){ echo '<span style="color:#94a3b8">Upgrades Troops</span>'; } else { echo '<a href="admin.php?p=addABTroops&did='.$_GET['did'].'">Upgrades Troops</a>'; } ?>
|
||||
<a href="admin.php?p=techlog&did=<?=(int)($_GET['did'] ?? 0)?>" style="color:#64748b">Research Log</a>
|
||||
<a href="admin.php?p=techlog&did=<?=(int)($_GET['did'] ?? 0)?>" style="color:#64748b"><?php echo ADMIN_RESEARCH_LOG; ?></a>
|
||||
</div>
|
||||
<?php if(isset($_GET['ab'])) echo '<div style="text-align:right;padding:0 8px 6px;color:#dc2626;font-weight:600;font-size:12px">AB Tech updated</div>'; ?>
|
||||
<?php } ?>
|
||||
|
||||
@@ -52,7 +52,7 @@ $heroCount = $hero ? 1 : 0;
|
||||
</div>
|
||||
<?php if($_SESSION['access']==ADMIN){ ?>
|
||||
<div class="troops-foot">
|
||||
<a href="admin.php?p=addTroops&did=<?=(int)($_GET['did'] ?? 0)?>"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 20h9"/><path d="M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z"/></svg>Edit Troops</a>
|
||||
<a href="admin.php?p=addTroops&did=<?=(int)($_GET['did'] ?? 0)?>"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 20h9"/><path d="M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z"/></svg><?php echo ADMIN_EDIT_TROOPS; ?></a>
|
||||
<?php if(isset($_GET['d'])) echo '<span style="color:#dc2626;font-weight:600">Troops edited</span>'; ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
@@ -45,7 +45,7 @@ $id = $_SESSION['id'];
|
||||
<div class="usergold-wrap">
|
||||
<div class="usergold-head">
|
||||
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="8" r="4" fill="#3498db"/><path d="M4 20c0-4 4-6 8-6s8 2 8 6" fill="#2c3e50"/></svg>
|
||||
<h2>User Gold</h2>
|
||||
<h2><?php echo ADM_USER_GOLD; ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="usergold-card">
|
||||
@@ -54,8 +54,8 @@ $id = $_SESSION['id'];
|
||||
<svg viewBox="0 0 24 24"><path d="M12 2l3 7h7l-5.5 4 2 7-6.5-4.5L5.5 20l2-7L2 9h7z"/></svg>
|
||||
</div>
|
||||
<div>
|
||||
<h3>Give Gold to Specific Player</h3>
|
||||
<p>Add gold only for single account (after ID).</p>
|
||||
<h3><?php echo ADM_GIVE_GOLD_TO_SPECIFIC_PLAYER; ?></h3>
|
||||
<p><?php echo ADM_ADD_GOLD_ONLY_FOR_SINGLE_ACCOUNT_AFTER_ID; ?></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -64,23 +64,21 @@ $id = $_SESSION['id'];
|
||||
<input type="hidden" name="admid" value="<?php echo $id; ?>">
|
||||
|
||||
<div class="field">
|
||||
<label>User ID</label>
|
||||
<label><?php echo ADM_USER_ID; ?></label>
|
||||
<input type="number" name="id" placeholder="ex: 123" required min="1">
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label>Amount Gold</label>
|
||||
<label><?php echo ADM_AMOUNT_GOLD; ?></label>
|
||||
<input type="number" name="gold" value="20" min="1" max="999999" required>
|
||||
</div>
|
||||
|
||||
<button type="submit">
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M12 5v14M5 12h14" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg>
|
||||
Give Gold
|
||||
</button>
|
||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"><path d="M12 5v14M5 12h14" stroke="#fff" stroke-width="2" stroke-linecap="round"/></svg><?php echo ADM_GIVE_GOLD; ?></button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<?php if(isset($_GET['g'])){ ?>
|
||||
<div class="usergold-success">✓ Gold successfully added for user!</div>
|
||||
<div class="usergold-success"><?php echo ADM_GOLD_SUCCESSFULLY_ADDED_FOR_USER; ?></div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
@@ -53,13 +53,13 @@ if($id){
|
||||
|
||||
<div class="illegal-wrap">
|
||||
<div class="illegal-head">
|
||||
<h2>🚨 Illegals Log: <a href="admin.php?p=player&uid=<?php echo $player['id'];?>"><?php echo htmlspecialchars($player['username']);?></a></h2>
|
||||
<h2><?php echo ADM_ILLEGALS_LOG; ?><a href="admin.php?p=player&uid=<?php echo $player['id'];?>"><?php echo htmlspecialchars($player['username']);?></a></h2>
|
||||
<div class="uid">UID: <?php echo $id; ?></div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<h3>
|
||||
<span>Detected Offences</span>
|
||||
<span><?php echo ADM_DETECTED_OFFENCES; ?></span>
|
||||
<?php
|
||||
$count = mysqli_num_rows(mysqli_query($GLOBALS["link"], "SELECT id FROM ".TB_PREFIX."illegal_log WHERE user = $id"));
|
||||
echo '<span class="badge">'.$count.' records</span>';
|
||||
@@ -74,8 +74,8 @@ if($id){
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>ID</th>
|
||||
<th>Description</th>
|
||||
<th><?php echo ADM_ID; ?></th>
|
||||
<th><?php echo ADM_DESCRIPTION; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -98,7 +98,7 @@ if($id){
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="admin.php?p=player&uid=<?php echo $id;?>" class="btn-back">← Back to player</a>
|
||||
<a href="admin.php?p=player&uid=<?php echo $id;?>" class="btn-back"><?php echo ADM_BACK_TO_PLAYER; ?></a>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
|
||||
@@ -52,13 +52,13 @@ if($id){
|
||||
|
||||
<div class="log-wrap">
|
||||
<div class="log-head">
|
||||
<h2>🔐 Login Log: <a href="admin.php?p=player&uid=<?php echo $player['id'];?>"><?php echo htmlspecialchars($player['username']);?></a></h2>
|
||||
<h2><?php echo ADM_LOGIN_LOG_2; ?><a href="admin.php?p=player&uid=<?php echo $player['id'];?>"><?php echo htmlspecialchars($player['username']);?></a></h2>
|
||||
<div class="uid">UID: <?php echo $id; ?></div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<h3>
|
||||
<span>Recent Login Attempts</span>
|
||||
<span><?php echo ADM_RECENT_LOGIN_ATTEMPTS; ?></span>
|
||||
<?php
|
||||
$count = mysqli_num_rows(mysqli_query($GLOBALS["link"], "SELECT id FROM ".TB_PREFIX."login_log WHERE uid = $id"));
|
||||
echo '<span class="badge">'.$count.' total</span>';
|
||||
@@ -73,9 +73,9 @@ if($id){
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Log ID</th>
|
||||
<th>IP Address</th>
|
||||
<th>Info</th>
|
||||
<th><?php echo ADM_LOG_ID; ?></th>
|
||||
<th><?php echo ADM_IP_ADDRESS; ?></th>
|
||||
<th><?php echo ADM_INFO; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -98,7 +98,7 @@ if($id){
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<a href="admin.php?p=player&uid=<?php echo $id;?>" class="btn-back">← Back to player</a>
|
||||
<a href="admin.php?p=player&uid=<?php echo $id;?>" class="btn-back"><?php echo ADM_BACK_TO_PLAYER; ?></a>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
|
||||
+16
-16
@@ -114,31 +114,31 @@ function shortEmail($e){if(!$e)return '-';if(strlen($e)>22)return substr($e,0,19
|
||||
|
||||
<div class="users-wrap">
|
||||
<div class="users-head">
|
||||
<h2>👥 Users</h2>
|
||||
<h2><?php echo ADM_USERS_H; ?></h2>
|
||||
<div style="font-size:11px;color:#94a3b8"><?php echo number_format($totalUsers);?> found</div>
|
||||
</div>
|
||||
|
||||
<div class="users-filters">
|
||||
<a href="?p=users&filter=all" class="<?php echo $filter=='all'?'active':'';?>">All</a>
|
||||
<a href="?p=users&filter=admins" class="<?php echo $filter=='admins'?'active':'';?>">Admins</a>
|
||||
<a href="?p=users&filter=normal" class="<?php echo $filter=='normal'?'active':'';?>">Normal</a>
|
||||
<a href="?p=users&filter=banned" class="<?php echo $filter=='banned'?'active':'';?>">Banned</a>
|
||||
<a href="?p=users&filter=online" class="<?php echo $filter=='online'?'active':'';?>">Online</a>
|
||||
<a href="?p=users&filter=all" class="<?php echo $filter=='all'?'active':'';?>"><?php echo ADM_ALL; ?></a>
|
||||
<a href="?p=users&filter=admins" class="<?php echo $filter=='admins'?'active':'';?>"><?php echo ADM_ADMINS; ?></a>
|
||||
<a href="?p=users&filter=normal" class="<?php echo $filter=='normal'?'active':'';?>"><?php echo ADM_NORMAL; ?></a>
|
||||
<a href="?p=users&filter=banned" class="<?php echo $filter=='banned'?'active':'';?>"><?php echo ADM_BANNED; ?></a>
|
||||
<a href="?p=users&filter=online" class="<?php echo $filter=='online'?'active':'';?>"><?php echo ADM_ONLINE; ?></a>
|
||||
</div>
|
||||
|
||||
<div class="search-box"><input type="text" id="userSearch" placeholder="Search..." onkeyup="filterUsers()"></div>
|
||||
<div class="search-box"><input type="text" id="userSearch" placeholder="<?php echo ADM_SEARCH_PH; ?>" onkeyup="filterUsers()"></div>
|
||||
|
||||
<div class="table-wrap">
|
||||
<table class="users-table" id="usersTable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Username</th>
|
||||
<th>Email</th>
|
||||
<th>Access</th>
|
||||
<th>Tribe</th>
|
||||
<th>Gold</th>
|
||||
<th>Last Activity</th>
|
||||
<th><?php echo ADM_ID; ?></th>
|
||||
<th><?php echo ADM_USERNAME; ?></th>
|
||||
<th><?php echo ADM_EMAIL; ?></th>
|
||||
<th><?php echo ADM_ACCESS; ?></th>
|
||||
<th><?php echo ADM_TRIBE; ?></th>
|
||||
<th><?php echo ADM_GOLD; ?></th>
|
||||
<th><?php echo ADM_LAST_ACTIVITY; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -168,9 +168,9 @@ function shortEmail($e){if(!$e)return '-';if(strlen($e)>22)return substr($e,0,19
|
||||
</div>
|
||||
|
||||
<div class="pagination">
|
||||
<?php if($page>1){?><a href="?p=users&filter=<?php echo $filter;?>&upage=<?php echo $page-1;?>">« Prev</a><?php }?>
|
||||
<?php if($page>1){?><a href="?p=users&filter=<?php echo $filter;?>&upage=<?php echo $page-1;?>"><?php echo ADM_PREV; ?></a><?php }?>
|
||||
<span class="current"><?php echo $page;?> / <?php echo $totalPages;?></span>
|
||||
<?php if($page<$totalPages){?><a href="?p=users&filter=<?php echo $filter;?>&upage=<?php echo $page+1;?>">Next »</a><?php }?>
|
||||
<?php if($page<$totalPages){?><a href="?p=users&filter=<?php echo $filter;?>&upage=<?php echo $page+1;?>"><?php echo ADM_NEXT; ?></a><?php }?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
+25
-25
@@ -114,9 +114,9 @@ if(isset($id)){
|
||||
|
||||
<!-- 1. VILLAGE INFORMATION - FULL WIDTH -->
|
||||
<div class="vcard">
|
||||
<div class="vhead">Village Information</div>
|
||||
<div class="vhead"><?php echo ADM_VILLAGE_INFORMATION; ?></div>
|
||||
<table class="vtable">
|
||||
<tr><td class="label">Owner</td><td><a href="admin.php?p=player&uid=<?php echo $village['owner']; ?>" style="color:#2563eb;font-weight:600"><?php echo htmlspecialchars($user['username']); ?></a></td>
|
||||
<tr><td class="label"><?php echo ADM_OWNER; ?></td><td><a href="admin.php?p=player&uid=<?php echo $village['owner']; ?>" style="color:#2563eb;font-weight:600"><?php echo htmlspecialchars($user['username']); ?></a></td>
|
||||
<td style="text-align:right">
|
||||
<form action="../GameEngine/Admin/Mods/editVillageOwner.php" method="POST" style="display:flex;gap:4px;align-items:center;justify-content:flex-end">
|
||||
<?php echo csrf_field(); ?>
|
||||
@@ -124,26 +124,26 @@ if(isset($id)){
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
|
||||
<input class="input-mini" type="text" name="newowner" value="<?php echo $user['id']; ?>" style="width:65px">
|
||||
<?php if($_SESSION['access'] == ADMIN) { ?>
|
||||
<button class="btn-icon" title="Change"><?php echo $svgEdit; ?></button>
|
||||
<button class="btn-icon" title="<?php echo ADM_CHANGE; ?>"><?php echo $svgEdit; ?></button>
|
||||
<?php } ?>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td class="label">Name</td><td colspan="2">
|
||||
<tr><td class="label"><?php echo ADM_NAME; ?></td><td colspan="2">
|
||||
<form action="../GameEngine/Admin/Mods/renameVillage.php" method="POST" style="display:flex;gap:4px">
|
||||
<?php echo csrf_field(); ?>
|
||||
<input type="hidden" name="did" value="<?php echo (int)($_GET['did'] ?? 0); ?>">
|
||||
<input type="hidden" name="admid" value="<?php echo $_SESSION['id']; ?>">
|
||||
<input class="input-mini" type="text" name="villagename" value="<?php echo htmlspecialchars($village['name']); ?>" style="flex:1">
|
||||
<?php if($_SESSION['access'] == ADMIN) { ?>
|
||||
<button class="btn-icon" title="Rename"><?php echo $svgEdit; ?></button>
|
||||
<button class="btn-icon" title="<?php echo ADM_RENAME; ?>"><?php echo $svgEdit; ?></button>
|
||||
<?php } ?>
|
||||
</form>
|
||||
</td></tr>
|
||||
<tr><td class="label">Population</td><td colspan="2"><?php echo $village['pop'];?> <a href="admin.php?action=recountPop&did=<?php echo (int)($_GET['did'] ?? 0); ?>" class="btn-icon" style="margin-left:4px"><?php echo $svgRefresh; ?></a></td></tr>
|
||||
<tr><td class="label">Coords</td><td colspan="2"><a href="<?php echo HOMEPAGE ?>/karte.php?d=<?php echo $village['wref']; ?>&c=<?php echo $generator->getMapCheck($village['wref']); ?>" target="_blank" style="color:#16a34a;font-weight:600">(<?php echo $coor['x']."|".$coor['y']; ?>)</a></td></tr>
|
||||
<tr><td class="label">ID</td><td colspan="2"><?php echo $village['wref'];?></td></tr>
|
||||
<tr><td class="label">Field</td><td colspan="2" class="badge-field"><?php for ($i = 0; $i <= 3; $i++){ $a = $i + 1; echo $typ[$i].'x <img src="../img/admin/r/'.$a.'.gif">'.($i!=3?' | ':''); } ?></td></tr>
|
||||
<tr><td class="label"><?php echo ADM_POPULATION; ?></td><td colspan="2"><?php echo $village['pop'];?> <a href="admin.php?action=recountPop&did=<?php echo (int)($_GET['did'] ?? 0); ?>" class="btn-icon" style="margin-left:4px"><?php echo $svgRefresh; ?></a></td></tr>
|
||||
<tr><td class="label"><?php echo ADM_COORDS; ?></td><td colspan="2"><a href="<?php echo HOMEPAGE ?>/karte.php?d=<?php echo $village['wref']; ?>&c=<?php echo $generator->getMapCheck($village['wref']); ?>" target="_blank" style="color:#16a34a;font-weight:600">(<?php echo $coor['x']."|".$coor['y']; ?>)</a></td></tr>
|
||||
<tr><td class="label"><?php echo ADM_ID; ?></td><td colspan="2"><?php echo $village['wref'];?></td></tr>
|
||||
<tr><td class="label"><?php echo ADM_FIELD; ?></td><td colspan="2" class="badge-field"><?php for ($i = 0; $i <= 3; $i++){ $a = $i + 1; echo $typ[$i].'x <img src="../img/admin/r/'.$a.'.gif">'.($i!=3?' | ':''); } ?></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
<!-- 2. RESOURCES - FULL WIDTH -->
|
||||
@@ -151,40 +151,40 @@ if(isset($id)){
|
||||
<div class="vhead">Resources<?php if($_SESSION['access'] == ADMIN) { ?><a href="admin.php?p=editResources&did=<?php echo (int)($_GET['did'] ?? 0); ?>"><?php echo $svgEdit; ?></a><?php } ?>
|
||||
</div>
|
||||
<table class="vtable" style="text-align:center">
|
||||
<tr style="background:#f8fafc;font-size:11px;color:#64748b"><td style="text-align:left">Res</td><td>Amt</td><td>Cap</td><td>Prod</td></tr>
|
||||
<tr><td style="text-align:left"><img src="../img/admin/r/1.gif"> Wood</td><td><?php echo floor($village['wood']); ?></td><td rowspan="3"><?php echo $village['maxstore'];?></td><td><?php echo $production['wood'];?></td></tr>
|
||||
<tr><td style="text-align:left"><img src="../img/admin/r/2.gif"> Clay</td><td><?php echo floor($village['clay']); ?></td><td><?php echo $production['clay'];?></td></tr>
|
||||
<tr><td style="text-align:left"><img src="../img/admin/r/3.gif"> Iron</td><td><?php echo floor($village['iron']); ?></td><td><?php echo $production['iron'];?></td></tr>
|
||||
<tr><td style="text-align:left"><img src="../img/admin/r/4.gif"> Crop</td><td><?php echo floor($village['crop']); ?></td><td><?php echo $village['maxcrop'];?></td><td><?php echo $production['crop'];?></td></tr>
|
||||
<tr style="background:#f8fafc;font-size:11px;color:#64748b"><td style="text-align:left"><?php echo ADM_RES; ?></td><td><?php echo ADM_AMT; ?></td><td><?php echo ADM_CAP; ?></td><td><?php echo ADM_PROD; ?></td></tr>
|
||||
<tr><td style="text-align:left"><img src="../img/admin/r/1.gif"><?php echo ADM_WOOD; ?></td><td><?php echo floor($village['wood']); ?></td><td rowspan="3"><?php echo $village['maxstore'];?></td><td><?php echo $production['wood'];?></td></tr>
|
||||
<tr><td style="text-align:left"><img src="../img/admin/r/2.gif"><?php echo ADM_CLAY; ?></td><td><?php echo floor($village['clay']); ?></td><td><?php echo $production['clay'];?></td></tr>
|
||||
<tr><td style="text-align:left"><img src="../img/admin/r/3.gif"><?php echo ADM_IRON; ?></td><td><?php echo floor($village['iron']); ?></td><td><?php echo $production['iron'];?></td></tr>
|
||||
<tr><td style="text-align:left"><img src="../img/admin/r/4.gif"><?php echo ADM_CROP; ?></td><td><?php echo floor($village['crop']); ?></td><td><?php echo $village['maxcrop'];?></td><td><?php echo $production['crop'];?></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="vcard">
|
||||
<div class="vhead">Expansion</div>
|
||||
<div class="vhead"><?php echo ADM_EXPANSION; ?></div>
|
||||
<table class="vtable" style="text-align:center">
|
||||
<tr style="background:#f8fafc;font-size:11px;color:#64748b"><td>Village</td><td>Pop</td><td>CP</td></tr>
|
||||
<tr style="background:#f8fafc;font-size:11px;color:#64748b"><td><?php echo ADM_VILLAGE; ?></td><td><?php echo ADM_POP; ?></td><td><?php echo ADM_CP; ?></td></tr>
|
||||
<?php for($e = 1; $e < 4; $e++){ $exp = $village['exp'.$e.'']; if($exp == 0){ echo '<tr><td>-</td><td>-</td><td>-</td></tr>'; }else{ $vill = $database->getVillage($exp); echo '<tr><td><a href="admin.php?p=village&did='.$vill['wref'].'" style="color:#2563eb">'.htmlspecialchars($vill['name']).'</a></td><td>'.$vill['pop'].'</td><td>'.$vill['cp'].'</td></tr>'; } } ?>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="vcard">
|
||||
<div class="vhead">Oasis</div>
|
||||
<div class="vhead"><?php echo ADM_OASIS; ?></div>
|
||||
<table class="vtable" style="text-align:center">
|
||||
<tr style="background:#f8fafc;font-size:11px;color:#64748b"><td style="width:28px"></td><td>Name</td><td>Coords</td><td>Loy</td><td>Bonus</td></tr>
|
||||
<tr style="background:#f8fafc;font-size:11px;color:#64748b"><td style="width:28px"></td><td><?php echo ADM_NAME; ?></td><td><?php echo ADM_COORDS; ?></td><td><?php echo ADM_LOY; ?></td><td><?php echo ADM_BONUS; ?></td></tr>
|
||||
<?php if(!empty($newResult)){ foreach($newResult as $row){ echo '<tr><td><a href="?action=delOas&oid='.$row['wref'].'&did='.$_GET['did'].'" onclick="return del(\'oas\','.$row['wref'].')" class="btn-icon danger">'.$svgDel.'</a></td><td>'.$row['name'].'</td><td><a href="../karte.php?d='.$row['wref'].'&c='.$generator->getMapCheck($row['wref']).'" target="_blank" style="color:#2563eb">('.$row['x'].'|'.$row['y'].')</a></td><td>'.round($row['loyalty']).'%</td><td>'.$row['type'].'</td></tr>'; } } else { echo '<tr><td colspan="5" style="color:#94a3b8;padding:10px">No oases</td></tr>'; } ?>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="vcard"><div class="vhead">Troops</div><div style="padding:4px"><?php include('troops.tpl'); ?></div></div>
|
||||
<div class="vcard"><div class="vhead">Upgrades</div><div style="padding:4px"><?php include('troopUpgrades.tpl'); ?></div></div>
|
||||
<div class="vcard"><div class="vhead">Artifact</div><div style="padding:4px"><?php include('artifact.tpl'); ?></div></div>
|
||||
<div class="vcard"><div class="vhead"><?php echo ADM_TROOPS; ?></div><div style="padding:4px"><?php include('troops.tpl'); ?></div></div>
|
||||
<div class="vcard"><div class="vhead"><?php echo ADM_UPGRADES; ?></div><div style="padding:4px"><?php include('troopUpgrades.tpl'); ?></div></div>
|
||||
<div class="vcard"><div class="vhead"><?php echo ADM_ARTIFACT; ?></div><div style="padding:4px"><?php include('artifact.tpl'); ?></div></div>
|
||||
|
||||
<div class="vmap-wrap">
|
||||
<div class="map-card">
|
||||
<h3>Resource Fields</h3>
|
||||
<h3><?php echo ADM_RESOURCE_FIELDS; ?></h3>
|
||||
<a href="admin.php?p=editVillage&did=<?php echo (int)($_GET['did'] ?? 0); ?>">
|
||||
<div id="content" class="village1">
|
||||
<div id="village_map" class="f<?php echo $database->getVillageType($village['wref']); ?>">
|
||||
@@ -219,14 +219,14 @@ if(isset($id)){
|
||||
</div>
|
||||
|
||||
<div class="vcard" style="margin-top:8px">
|
||||
<div class="vhead">Buildings</div>
|
||||
<div class="vhead"><?php echo ADM_BUILDINGS; ?></div>
|
||||
<table class="vtable" style="text-align:center">
|
||||
<tr style="background:#f8fafc;font-size:11px;color:#64748b"><td>ID</td><td>GID</td><td style="text-align:left">Name</td><td>Lvl</td><td>Edit</td></tr>
|
||||
<tr style="background:#f8fafc;font-size:11px;color:#64748b"><td><?php echo ADM_ID; ?></td><td><?php echo ADM_GID; ?></td><td style="text-align:left"><?php echo ADM_NAME; ?></td><td><?php echo ADM_LVL; ?></td><td><?php echo ADM_EDIT; ?></td></tr>
|
||||
<?php for ($i = 1; $i <= 41; $i++){ if($i == 41) $i = 99; if($fdata['f'.$i.'t'] == 0) $bu = "-"; else $bu = $funct->procResType($fdata['f'.$i.'t']); echo '<tr><td>'.$i.'</td><td>'.$fdata['f'.$i.'t'].'</td><td style="text-align:left">'.$bu.'</td><td>'.$fdata['f'.$i].'</td><td>'.($_SESSION['access'] == ADMIN ? '<a href="admin.php?p=editVillage&did='.$_GET['did'].'" class="btn-icon">'.$svgEdit.'</a>': '').'</td></tr>'; } ?>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div style="text-align:center;margin:12px 0"><a href="admin.php?p=villagelog&did=<?php echo (int)($_GET['did'] ?? 0); ?>" style="color:#2563eb;font-weight:500;font-size:13px">Village Build Log →</a></div>
|
||||
<div style="text-align:center;margin:12px 0"><a href="admin.php?p=villagelog&did=<?php echo (int)($_GET['did'] ?? 0); ?>" style="color:#2563eb;font-weight:500;font-size:13px"><?php echo ADM_VILLAGE_BUILD_LOG; ?></a></div>
|
||||
|
||||
</div>
|
||||
<?php } else { include("404.tpl"); } } ?>
|
||||
@@ -48,26 +48,26 @@ $logs = $database->query("SELECT * FROM ".TB_PREFIX."build_log WHERE wid = $id O
|
||||
</style>
|
||||
|
||||
<div class="vlog-wrap">
|
||||
<a href="admin.php?p=village&did=<?php echo $id; ?>" class="back-btn">← Back to Village</a>
|
||||
<a href="admin.php?p=village&did=<?php echo $id; ?>" class="back-btn"><?php echo ADM_BACK_TO_VILLAGE; ?></a>
|
||||
|
||||
<div class="vlog-head">
|
||||
<div class="icon">🏗️</div>
|
||||
<div>
|
||||
<h2><?php echo htmlspecialchars($village['name']); ?> <span style="opacity:.7">— Build Log</span></h2>
|
||||
<span>Latest 200 action</span>
|
||||
<h2><?php echo htmlspecialchars($village['name']); ?> <span style="opacity:.7"><?php echo ADM_BUILD_LOG; ?></span></h2>
|
||||
<span><?php echo ADM_LATEST_200_ACTION; ?></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="vlog-card">
|
||||
<?php if(mysqli_num_rows($logs) == 0): ?>
|
||||
<div class="empty">No action recorded yet.</div>
|
||||
<div class="empty"><?php echo ADM_NO_ACTION_RECORDED_YET; ?></div>
|
||||
<?php else: ?>
|
||||
<table class="vlog-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="vlog-num">#</th>
|
||||
<th>Event</th>
|
||||
<th class="vlog-date">Data</th>
|
||||
<th><?php echo ADM_EVENT; ?></th>
|
||||
<th class="vlog-date"><?php echo ADM_DATA; ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@@ -41,10 +41,10 @@
|
||||
|
||||
<table class="vil-table">
|
||||
<tr>
|
||||
<td>NAME</td>
|
||||
<td>POPULATION</td>
|
||||
<td>COORDINATES</td>
|
||||
<td>TROOPS</td>
|
||||
<td><?php echo ADM_NAME_2; ?></td>
|
||||
<td><?php echo ADM_POPULATION_2; ?></td>
|
||||
<td><?php echo ADM_COORDINATES; ?></td>
|
||||
<td><?php echo ADM_TROOPS_2; ?></td>
|
||||
<td style="width:32px"></td>
|
||||
</tr>
|
||||
<?php
|
||||
|
||||
Reference in New Issue
Block a user