<?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(); ?>