mirror of
https://github.com/Shadowss/TravianZ.git
synced 2026-07-20 19:46:10 +00:00
Incremental Refactor Templates 3
Incremental Refactor Templates 2
This commit is contained in:
+194
-107
@@ -1,127 +1,214 @@
|
||||
<?php
|
||||
<?php
|
||||
#################################################################################
|
||||
## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ##
|
||||
## --------------------------------------------------------------------------- ##
|
||||
## Filename multivillage.tpl ##
|
||||
## Developed by: Dzoki ##
|
||||
## Refactored by: Shadow Incremental Refactor ##
|
||||
## License: TravianZ Project ##
|
||||
## Copyright: TravianZ (c) 2010-2025. All rights reserved. ##
|
||||
## Copyright: TravianZ (c) 2010-2026. All rights reserved. ##
|
||||
## ##
|
||||
## Incremental Refactor Notes: ##
|
||||
## - Preserved original functionality and HTML structure ##
|
||||
## - Compatible with older PHP 7+ environments ##
|
||||
## - Removed massive duplicated blocks ##
|
||||
## - Added safer GET handling ##
|
||||
## - Reduced repeated count() calls ##
|
||||
## - Centralized URL generation ##
|
||||
## - Added comments for maintainability ##
|
||||
## ##
|
||||
#################################################################################
|
||||
|
||||
/**
|
||||
* ---------------------------------------------------------
|
||||
* Default fallback
|
||||
* ---------------------------------------------------------
|
||||
*/
|
||||
if (!isset($id)) {
|
||||
$id = '';
|
||||
$id = '';
|
||||
}
|
||||
|
||||
if(count($session->villages) > 1){
|
||||
/**
|
||||
* ---------------------------------------------------------
|
||||
* Show multivillage only if user owns >1 village
|
||||
* ---------------------------------------------------------
|
||||
*/
|
||||
if (count($session->villages) > 1) {
|
||||
|
||||
/**
|
||||
* Load villages once
|
||||
*/
|
||||
$returnVillageArray = $database->getArrayMemberVillage($session->uid);
|
||||
|
||||
/**
|
||||
* Total village count
|
||||
*/
|
||||
$villageCount = count($session->villages);
|
||||
|
||||
/**
|
||||
* Current selected village
|
||||
*/
|
||||
$currentVillage = isset($_SESSION['wid'])
|
||||
? (int)$_SESSION['wid']
|
||||
: 0;
|
||||
|
||||
/**
|
||||
* -----------------------------------------------------
|
||||
* Allowed GET parameters
|
||||
* -----------------------------------------------------
|
||||
* Keeps original functionality while avoiding
|
||||
* duplicated if/else blocks.
|
||||
*/
|
||||
$allowedParams = array(
|
||||
'w',
|
||||
'r',
|
||||
'z',
|
||||
'o',
|
||||
's',
|
||||
'c',
|
||||
't',
|
||||
'd',
|
||||
'aid',
|
||||
'uid',
|
||||
'vill',
|
||||
'id'
|
||||
);
|
||||
|
||||
/**
|
||||
* -----------------------------------------------------
|
||||
* Build extra URL parameters
|
||||
* -----------------------------------------------------
|
||||
*/
|
||||
$extraParams = '';
|
||||
|
||||
foreach ($allowedParams as $param) {
|
||||
|
||||
if (isset($_GET[$param]) && $_GET[$param] !== '') {
|
||||
|
||||
/**
|
||||
* Keep original special logic:
|
||||
* if $id >= 19, preserve internal id
|
||||
*/
|
||||
if ($param == 'id' && $id >= 19) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$extraParams .= '&' . $param . '=' . urlencode($_GET[$param]);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* -----------------------------------------------------
|
||||
* Preserve original behavior for internal building id
|
||||
* -----------------------------------------------------
|
||||
*/
|
||||
if ($id >= 19) {
|
||||
$extraParams = '&id=' . (int)$id;
|
||||
}
|
||||
|
||||
?>
|
||||
<table id="vlist" cellpadding="1" cellspacing="1">
|
||||
<thead><tr><td colspan="3"><a href="dorf3.php" accesskey="9"><?php echo VILLAGES; ?>:</a></td></tr></thead>
|
||||
<tbody><?php
|
||||
$returnVillageArray = $database->getArrayMemberVillage($session->uid);
|
||||
if(isset($_GET['w'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&w=".$_GET['w']).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['r'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&r=".$_GET['r']).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['z'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
|
||||
<thead>
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&z=".$_GET['z']).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['o'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<td colspan="3">
|
||||
<a href="dorf3.php" accesskey="9">
|
||||
<?php echo VILLAGES; ?>:
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
<?php
|
||||
/**
|
||||
* -----------------------------------------------------
|
||||
* Render village list
|
||||
* -----------------------------------------------------
|
||||
*/
|
||||
for ($i = 0; $i < $villageCount; $i++) {
|
||||
|
||||
/**
|
||||
* Safety checks for older PHP versions
|
||||
*/
|
||||
if (!isset($returnVillageArray[$i])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$villageData = $returnVillageArray[$i];
|
||||
|
||||
/**
|
||||
* Village values
|
||||
*/
|
||||
$villageWref = isset($villageData['wref'])
|
||||
? (int)$villageData['wref']
|
||||
: 0;
|
||||
|
||||
$villageName = isset($villageData['name'])
|
||||
? $villageData['name']
|
||||
: '';
|
||||
|
||||
$villageX = isset($villageData['x'])
|
||||
? (int)$villageData['x']
|
||||
: 0;
|
||||
|
||||
$villageY = isset($villageData['y'])
|
||||
? (int)$villageData['y']
|
||||
: 0;
|
||||
|
||||
/**
|
||||
* Highlight current village
|
||||
*/
|
||||
$highlight = ($currentVillage == $villageWref)
|
||||
? 'hl'
|
||||
: '';
|
||||
|
||||
/**
|
||||
* Build village switch URL
|
||||
*/
|
||||
$villageUrl =
|
||||
'?newdid=' . $villageWref . $extraParams;
|
||||
|
||||
?>
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&o=".$_GET['o']).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
|
||||
<td class="dot <?php echo $highlight; ?>">
|
||||
●
|
||||
</td>
|
||||
|
||||
<td class="link">
|
||||
<a href="<?php echo $villageUrl; ?>">
|
||||
<?php echo htmlspecialchars($villageName, ENT_QUOTES, 'UTF-8'); ?>
|
||||
</a>
|
||||
</td>
|
||||
|
||||
<td class="aligned_coords">
|
||||
|
||||
<div class="cox">
|
||||
(<?php echo $villageX; ?>
|
||||
</div>
|
||||
|
||||
<div class="pi">
|
||||
|
|
||||
</div>
|
||||
|
||||
<div class="coy">
|
||||
<?php echo $villageY; ?>)
|
||||
</div>
|
||||
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<?php
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['s'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&s=".$_GET['s']).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['c'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : (isset($_GET['d']) ? "&d=".$_GET['d'] : '')).(($id>=19) ? "&id=".$id : "&c=".$_GET['c']).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['t'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&t=".$_GET['t']).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['d'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&d=".$_GET['d']).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['aid'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&aid=".$_GET['aid']).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['uid'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&uid=".$_GET['uid']).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['vill']) && isset($_GET['id'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&id=".$_GET['id'])."&vill=".$_GET['vill'].'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}
|
||||
}
|
||||
else if(isset($_GET['t']) && isset($_GET['id'])) {
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : "&id=".$_GET['id'])."&t=".$_GET['t'].'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}}else{
|
||||
for($i=1;$i<=count($session->villages);++$i){echo'
|
||||
<tr>
|
||||
<td class="dot '.(($_SESSION['wid'] == $returnVillageArray[$i-1]['wref'] ) ? 'hl':'').'">●</td>
|
||||
<td class="link"><a href="?newdid='.$returnVillageArray[$i-1]['wref'].(($id>=19) ? "&id=".$id : (!empty($_GET['id']) ? "&id=".$_GET['id'] : '')).'">'.$returnVillageArray[$i-1]['name'].'</a></td>
|
||||
<td class="aligned_coords"><div class="cox">('.$returnVillageArray[$i-1]['x'].'</div><div class="pi">|</div><div class="coy">'.$returnVillageArray[$i-1]['y'].')</div></td></tr>';
|
||||
}}?>
|
||||
</tbody>
|
||||
?>
|
||||
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
?>
|
||||
Reference in New Issue
Block a user