diff options
Diffstat (limited to 'swat/scripting')
-rw-r--r-- | swat/scripting/client/status.js | 49 | ||||
-rw-r--r-- | swat/scripting/server/status.esp | 27 |
2 files changed, 76 insertions, 0 deletions
diff --git a/swat/scripting/client/status.js b/swat/scripting/client/status.js new file mode 100644 index 0000000000..fa2c3b57e7 --- /dev/null +++ b/swat/scripting/client/status.js @@ -0,0 +1,49 @@ +/* + server status library for SWAT + + released under the GNU GPL Version 2 or later +*/ + + +/* Ensure we always include the proper libs + Playing with a way to add/del scripts on the fly... +*/ +var lib = document.createElement('script'); +lib.setAttribute('type', 'text/javascript'); +lib.setAttribute('src', '/scripting/client/call.js'); +var head = document.getElementsByTagName('head')[0]; +head.appendChild(lib); + +// Format for a server status table +var s = [ + { id : "server", + label : "Server", + content: "text", + defaultValue : "-", + width : 100, + }, + + { id : "status", + label : "Status", + content: "text", + defaultValue : "-", + width: 100, + } +]; + +function __load_status_table(info, container) +{ + var table = new QxListView(s); + var i; + for (i in info) { + table.addData( {server : i, status : info[i]} ); + } + container.add(table); + container.setVisible(true); +} + +function getServerStatus(container) +{ + server_call_url("/scripting/server/status.esp", 'serverInfo', + function(info) { __load_status_table(info, container); }); +} diff --git a/swat/scripting/server/status.esp b/swat/scripting/server/status.esp new file mode 100644 index 0000000000..8ca2067d49 --- /dev/null +++ b/swat/scripting/server/status.esp @@ -0,0 +1,27 @@ +<% + +libinclude("management.js"); +libinclude("server_call.js"); + +function serverInfo() +{ + var info = new Object(); + info["NBT Server"] = server_status("nbt"); + info["WINS Server"] = server_status("wins"); + info["CLDAP Server"] = server_status("cldap"); + info["Kerberos Server"] = server_status("kdc"); + info["SMB Server"] = stream_server_status("smb"); + info["LDAP Server"] = stream_server_status("ldap"); + info["RPC Server"] = stream_server_status("rpc"); + + return info; +} + +/* register a call for clients to make */ +var call = servCallObj(); +call.add('serverInfo', serverInfo); + +/* run the function that was asked for */ +call.run(); + +%> |