require_once("internal/source.lib.php");
$ipAndPort = substr($target,14);
if ( strlen($ipAndPort) < 10 ) {
die("IP und/ oder Port falsch!");
}
$ipAndPort = str_replace("%","",$ipAndPort);
$extension = explode("/",$ipAndPort);
if ( isset($extension[0]) ) {
$ipAndPort = $extension[0];
}
if ( isset($extension[1]) ) {
$extension = strtolower($extension[1]);
switch ( $extension ) {
case 'rules':
$extension = 'rules';
break;
default:
$extension = '';
break;
}
}
$ipAndPort = explode(":",$ipAndPort);
if ( count($ipAndPort) != 2 ) {
die("IP und/ oder Port nicht angegeben!");
}
$server = $db->fetchRow('SELECT `serverList`.*,'
.' `country`.`isoCode2` AS `countryCode`, `country`.`name` AS `countryName`, `country`.`nativeName` AS `countryNativeName`, `country`.`icon` AS `countryIcon`'
.' FROM `serverList`'
.' LEFT JOIN `country` ON (`country`.`id`=`serverList`.`countryId`)'
.' WHERE `enabled`=1 AND `ip`='.$db->quote($ipAndPort[0]).' AND `port`='.(int)$ipAndPort[1]);
if ( !$server ) {
die("Server nicht gefunden oder aktiv");
}
//echo $server['ip'].":".$server['port']."
";
$server['object'] = new gameSourceServer($server['ip'],$server['port']);
$server['object']->query();
$server['info'] = &$server['object']->info;
$server['clients'] = &$server['object']->clients;
if ( $extension == 'rules' ) {
$rules = $server['object']->sourceServer->getRules();
ksort($rules);
$smarty->assign("rules",$rules);
//p($server['object']->sourceServer->getRules());
}
$server['info']['mapIconFile'] = "";
if ( isset($server['info']['map']) ) {
$mapIconPath = "images/source/mapIcons";
if ( is_file($cfg->basePath."/".$mapIconPath."/".$server['info']['map'].".jpg") ) {
$server['info']['mapIconFile'] = "/".$mapIconPath."/".$server['info']['map'].".jpg";
}
}
//echo "
";var_dump($server['info']);echo ""; //echo "
";var_dump($serverList);echo ""; switch ( $extension ) { case 'rules': $title = "Server Regeln"; if ( isset($server['info']['name']) && isset($server['info']['game']) ) { $title = trim($server['info']['name']).": Spielerliste (".trim($server['info']['game']).")"; } else { $title .= " für Server ".$server['ip'].":".$server['port']; } $smarty->assign("server",$server); $smarty->assign("expire","90"); $smarty->assign("refresh","90"); $smarty->assign("title",$title); $smarty->display("source/serverDetailRules.tpl"); break; default: $title = "Spielerliste"; if ( isset($server['info']['name']) && isset($server['info']['game']) ) { $title = trim($server['info']['name']).": Spielerliste (".trim($server['info']['game']).")"; } else { $title .= " für Server ".$server['ip'].":".$server['port']; } $smarty->assign("server",$server); $smarty->assign("expire","90"); $smarty->assign("refresh","90"); $smarty->assign("title",$title); $smarty->display("source/serverDetail.tpl"); }