0) { $t = " "; while ($t != "\n") { if(fseek($handle, $pos, SEEK_END) == -1) { $beginning = true; break; } $t = fgetc($handle); $pos --; } $linecounter --; if ($beginning) { rewind($handle); } $text[$lines-$linecounter-1] = fgets($handle); if ($beginning) break; } fclose ($handle); return array_reverse($text); } function formatChartData($lines) { $chartdata = array(); foreach($lines as $line) { $s = explode(" ", $line); if(count($s) >= 2) { array_push($chartdata, array("x" => 1000 * (int)$s[0], "y" => (int)trim($s[1]))); } } return $chartdata; } function formatWorldChartData($lines) { $cda = array(); $cdb = array(); foreach($lines as $line) { $s = explode(" ", $line); if(count($s) >= 3) { array_push($cda, array("x" => 1000 * (int)$s[0], "y" => (int)trim($s[1]))); array_push($cdb, array("x" => 1000 * (int)$s[0], "y" => (int)trim($s[2]))); } } return array("a" => $cda, "b" => $cdb); } function render() { $zonecount = array(); $playercount = 0; $tradercount = 0; $telnet = new telnet; $telnet->show_connect_error = 0; if ($telnet->connect()) { $players = $telnet->whoall(); //print_r($players); foreach($players as $player) { if($player['Anon'] != "") { //print("Skipping anon player ${player['Name']}\n"); continue; } $playercount++; if($player['Trader'] != "") $tradercount++; if(!array_key_exists($player['Zone'], $zonecount)) $zonecount[$player['Zone']] = 1; else $zonecount[$player['Zone']]++; //print_r($player); } } global $zonedata; //print_r($zonedata); $jsvars = ""; print("
There are ${playercount} players online including ${tradercount} traders.
\n"); else print("There are ${playercount} players online.
\n"); print("| \n"); print(" | \n"); print(" | \n"); print(" | \n"); print(" |
|---|---|---|---|
| ${zone['longname']} | \n"); print("${zone['shortname']} | \n"); print("${zonecount[$zone['shortname']]} | \n"); print("\n"); //print("\n"); $jsvars .= "var chartdata_${zone['shortname']} = ${cdjson};\n"; print(" |