<?PHP
// Path to server.dat
$statusfile = '/usr/local/pvpgn/var/status/server.dat';
// What info should be shown?
'STATUS' => true,
'USERS' => false,
'GAMES' => false,
'CHANNELS' => false,
);
// Display game icons next to users/games online?
$displayicons = false;
// URL of directory containing the game icons. No trailing slash.
$iconsdir = "/gameicons";
// Enable profile links?
$profilelink_enable = true;
$profilelink_url = "/stats/index.php"; // URL to stats
// Display the list of users/games/channels side by side rather than in a vertical list?
$sidebyside = false;
// Language constants. Translate into your native language if needed.
'STATUSDETAIL' => 'Server Status',
'USERSDETAIL' => 'Users currently online',
'GAMESDETAIL' => 'Games currently online',
'CHANNELSDETAIL' => 'Channels currently online',
'Version' => 'version',
'Uptime' => 'Uptime',
'Users' => 'Users',
'Games' => 'Games',
'Channels' => 'Channels',
'UserAccounts' => 'User accounts',
'none' => 'None',
);
// ------------------------------------------------------------------------------------------ //
// //
// Configuration finished, no need to change anything below here //
// //
// ------------------------------------------------------------------------------------------ //
function parse_statusfile($filename) {
$lines = file($filename); foreach($lines as $line) {
if ($line == "") {
continue;
} else if ($line[0] == "[" && $line[strlen($line) - 1] == "]") { } else {
$property = substr($line, 0
, $pos); $value = substr($line, $pos + 1
); if ($sec_name == 'USERS' || $sec_name == 'GAMES') {
list($ini_array[$sec_name][$property]['ctag'],$ini_array[$sec_name][$property]['name']) = explode(',',$value); } else {
$ini_array[$sec_name][$property] = $value;
}
}
}
return $ini_array;
}
function namedisplay($user) {
global $profilelink_enable, $profilelink_url;
if ($profilelink_enable && $user['ctag'] != 'CHAT') {
return "<a href=\"".$profilelink_url."?game=".$user['ctag']."&user=".$user['name']."\">".$user['name']."</a>";
} else {
return $user['name'];
}
}
$status_array = parse_statusfile($statusfile);
if ($sidebyside) {
$output = "<div>\n";
foreach ($show as $type => $show) {
if ($show == true) {
$output .= "<strong>".$language[$type.'DETAIL']."</strong><br>\n";
if (empty($status_array[$type])) { $output .= $language['none']."<br><br>\n";
} else {
switch ($type) {
case 'STATUS':
foreach ($status_array[$type] as $key => $value) {
$output .= $language[$key].": ".$value."<br>";
}
break;
case 'USERS':
foreach ($status_array[$type] as $key => $value) {
$output .= namedisplay($value).", ";
}
break;
case 'GAMES':
foreach ($status_array[$type] as $key => $value) {
$output .= $value['name'].", ";
}
break;
case 'CHANNELS':
foreach ($status_array[$type] as $key => $value) {
$output .= $value.", ";
}
break;
}
$output = substr($output,0
,-4
); $output .= "<br><br>\n";
}
}
}
} else {
$output = "<table cellspacing=\"0\">\n";
foreach ($show as $type => $show) {
if ($show == true) {
$output .= " <tr>\n";
$output .= " <td colspan=\"2\">\n";
$output .= " <strong>".$language[$type.'DETAIL']."</strong>\n";
$output .= " </td>\n";
$output .= " </tr>\n";
if ($status_array[$type] == true) {
foreach ($status_array[$type] as $key => $value) {
if ($type == 'STATUS') {
$output .= " <tr>\n";
$output .= " <td colspan=\"2\">\n";
$output .= " ".$language[$key].": ".$value."\n";
$output .= " </td>\n";
$output .= " </tr>\n";
} else {
$output .= " <tr>\n";
if ($type != 'CHANNELS') {
$output .= " <td width=\"1%\">\n";
if ($displayicons)
$output .= " <img src=\"".$iconsdir."/".$value['ctag'].".jpg\">\n";
else
$output .= " \n";
$output .= " </td>\n";
$output .= " <td>\n";
if ($type == 'USERS') {
$output .= " ".namedisplay($value)."\n";
} else {
$output .= " ".$value['name']."\n";
}
$output .= " </td>\n";
$output .= " </tr>\n";
} else {
$output .= " <tr>\n";
$output .= " <td colspan=\"2\">\n";
$output .= " ".$value."\n";
$output .= " </td>\n";
$output .= " </tr>\n";
}
}
}
} else {
$output .= " <tr>\n";
$output .= " <td colspan=\"2\">\n";
$output .= " <strong>".$language['none']."</strong>\n";
$output .= " </td>\n";
$output .= " </tr>\n";
}
$output .= " <tr>\n";
$output .= " <td colspan=\"2\" height=\"7\">\n";
$output .= " </td>\n";
$output .= " </tr>\n";
}
}
$output .= "</table>\n";
}
echo $output;
?>