69 lines
1.5 KiB
PHP
69 lines
1.5 KiB
PHP
|
<?php
|
||
|
header('Content-Type: text/html; charset=utf-8');
|
||
|
|
||
|
require('GbxRemote.inc.php');
|
||
|
|
||
|
echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n";
|
||
|
echo "<HTML>\n<HEAD>\n";
|
||
|
echo "\t<TITLE>Trackmania methods</TITLE>\n";
|
||
|
echo "</HEAD>\n<BODY>\n";
|
||
|
|
||
|
echo "<h1>Available methods:</h1>\n";
|
||
|
|
||
|
$client = new IXR_Client_Gbx;
|
||
|
|
||
|
if (!$client->Init(5000)) {
|
||
|
die('An error occurred - ' . $client->getErrorCode() . ':' . $client->getErrorMessage());
|
||
|
}
|
||
|
|
||
|
if (!$client->query('system.listMethods')) {
|
||
|
die('An error occurred - ' . $client->getErrorCode() . ':' . $client->getErrorMessage());
|
||
|
}
|
||
|
$methods = $client->getResponse();
|
||
|
|
||
|
print '<ul>';
|
||
|
foreach ($methods as $m) {
|
||
|
print '<li><b>' . $m . "</b><br/>\n";
|
||
|
if ($client->query('system.methodSignature', $m)) {
|
||
|
$signatures = $client->getResponse();
|
||
|
} else {
|
||
|
print "<font color='red'>{error in signature}</font><br/>\n";
|
||
|
$signatures = array();
|
||
|
}
|
||
|
if ($client->query('system.methodHelp', $m)) {
|
||
|
$help = $client->getResponse();
|
||
|
} else {
|
||
|
$help = "<font color='red'>{no help}</font>";
|
||
|
}
|
||
|
|
||
|
foreach ($signatures as $sig) {
|
||
|
$is_retval = 1;
|
||
|
$is_firstarg = 1;
|
||
|
foreach ($sig as $argtype) {
|
||
|
if ($is_retval) {
|
||
|
print $argtype . ' ' . $m . '(';
|
||
|
$is_retval = 0;
|
||
|
} else {
|
||
|
if (!$is_firstarg) {
|
||
|
print ', ';
|
||
|
}
|
||
|
print $argtype;
|
||
|
$is_firstarg = 0;
|
||
|
}
|
||
|
}
|
||
|
print ")<br/>\n";
|
||
|
}
|
||
|
print "<font color='0x113355'>";
|
||
|
print $help;
|
||
|
print "</font></li>\n";
|
||
|
}
|
||
|
print '</ul>';
|
||
|
|
||
|
$client->Terminate();
|
||
|
|
||
|
echo "\n</BODY>\n</HTML>\n";
|
||
|
|
||
|
flush();
|
||
|
|
||
|
?>
|