<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Serverstatus</title>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1" />
<style type="text/css"><!--
tr {
vertical-align: top;
}
body {
background-color: white;
color: black;
font-family: Tahoma, Verdana, Arial, sans-serif;
font-size: 0.8em;
}
table.serverstatus {
width: 640px;
background-color: #EEEEEE;
border: 1px dotted #AAAAAA;
}
table.playerstatus {
width: 640px;
background-color: #EEEEEE;
border: 1px dotted #AAAAAA;
text-align: center;
}
img.currentmap {
width: 200px;
border: 1px solid black;
}
img.nextmap {
width: 100px;
border: 1px solid black;
}
td {
height: 1.4em;
}
td.key {
font-size: 0.8em;
font-weight: bold;
}
--></style>
</head>
<body>
<!-- Begin Content -->
<?php
$ip = '85.14.231.200'; // IP deines Servers
$port = '27015'; // Port des Servers (kann leer gelassen werden)
$colored_names = true; // Sollen Servername+Spielername farbig werden (bei Q3, AAO, etc.)?
// Paar Prüfungen und Generierung der URL zur Abfrage der Daten
$aport = (int)$port;
if ($aport) $aport = 'port='.$aport.'&';
else unset($aport);
if ($colored_names)
$colored_names = '&color=yes';
else
unset($colored_names);
// Daten holen
$serverinfo = @unserialize(@file_get_contents('http://wi.servercamp.de/'.'getserverdata.php?'.$aport.'ip='.$ip.'&api=2'.$colored_names));
if (!is_array($serverinfo)) {
// Die Rückgabe enthält kein brauchbares Ergebniss.
echo 'Serverinformationen für '.$ip.':'.$port.' konnten nicht gelesen werden.';
}
else
{ // Begin Output
// Auskommentierung in folgender Zeile entfernen um alle Variablen zu sehen!
// echo '<pre>'.var_export($serverinfo, true).'</pre>';
// Generieren des Codes für Mapbilder sofern vorhanden.
$img_maps = '';
if ($serverinfo['img_currmap'])
$img_maps = '<img src="'.$serverinfo['img_currmap'].'" class="currentmap" alt="'.$serverinfo['currmap'].'" />';
if ($serverinfo['img_nextmap'])
$img_maps .= '<br /><img src="'.$serverinfo['img_nextmap'].'" class="nextmap" alt="'.$serverinfo['nextmap'].'" />';
?>
<table class="serverstatus">
<tr>
<th colspan="3">Serverstatus</th>
</tr>
<tr>
<td>
<table>
<tr><td class="key">Servername: </td><td><?php echo $serverinfo['servername']; ?></td></tr>
<tr><td class="key">IP & Port: </td><td><?php echo $serverinfo['serverip'].':'.$serverinfo['port']; ?></td></tr>
<tr><td class="key">Serverart: </td><td><?php echo $serverinfo['serveros'].' '.$serverinfo['servertype']; ?></td></tr>
<tr><td class="key">Game: </td><td><?php echo $serverinfo['currgame']; ?></td></tr>
<tr><td class="key">Mod-Name: </td><td><?php echo $serverinfo['currmod']; ?></td></tr>
<tr><td class="key">Spieler: </td><td><?php echo $serverinfo['currplayers'].' / '. $serverinfo['maxplayers']; ?></td></tr>
<tr><td class="key">Servermodus: </td><td><?php echo $serverinfo['servermode']; ?></td></tr>
<tr><td class="key">Aktuelle Map: </td><td><?php echo $serverinfo['currmap']; ?></td></tr>
</table>
</td>
<td style="text-align: right;"><?php echo $img_maps; ?></td>
</tr>
<tr><td colspan="3" style="text-align: center;">
<a title="In HLSW beobachten" href="hlsw://<?php echo $ip.':'.$serverinfo['port']; ?>">Server in HLSW beobachten</a> |
<a title="Mit HLSW connecten" href="hlsw://<?php echo $ip.':'.$serverinfo['port']; ?>/?connect=1">Auf den Server connecten</a></td></tr>
</table>
<?php
if (count($serverinfo['player']) > 1) // Spielertabelle nur anzeigen wenn wirklich min. ein Spieler drauf ist.
{
?>
<div style="height: 1em;"> </div>
<table class="playerstatus">
<tr><th colspan="4">Spieler</th></tr>
<tr><th>Nr.</th><th>Name</th><th>Frags</th><th>Zeit</th></tr>
<?php
foreach ($serverinfo['player'] as $idx => $player) {
?>
<tr>
<td class="key"><?php echo $idx+1; ?></td>
<td><?php echo $player["name"]; ?></td>
<td><?php echo $player["frags"]; ?></td>
<td><?php echo $player["time"]; ?></td>
</tr>
<?php
} // End foreach player
?>
</table>
<?php
} // End if players
?>
<?php
} // End Output
?>
<!-- End of Content -->
</body>
</html>