diff options
author | Andrew Tridgell <tridge@samba.org> | 2005-08-05 19:16:13 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:31:21 -0500 |
commit | 3a02c8b116e80d2fd70b1957a5ed85acb0977b7f (patch) | |
tree | 9cf5d92f577886ab3143a90aaab58c086e8f20a5 /swat/scripting/client/call.js | |
parent | 8808465e5b70fd6388ed02a2cfda6015ffc914e5 (diff) | |
download | samba-3a02c8b116e80d2fd70b1957a5ed85acb0977b7f.tar.gz samba-3a02c8b116e80d2fd70b1957a5ed85acb0977b7f.tar.bz2 samba-3a02c8b116e80d2fd70b1957a5ed85acb0977b7f.zip |
r9134: added the client side js library code for handling remote 'AJAJ' calls
into our web server
(This used to be commit 530717122a3c7e34258db8ed0bfd0cc00624b903)
Diffstat (limited to 'swat/scripting/client/call.js')
-rw-r--r-- | swat/scripting/client/call.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/swat/scripting/client/call.js b/swat/scripting/client/call.js new file mode 100644 index 0000000000..bb89390e45 --- /dev/null +++ b/swat/scripting/client/call.js @@ -0,0 +1,38 @@ +/* + client side js functions for remote calls into the server + + Copyright Andrew Tridgell 2005 + released under the GNU GPL Version 2 or later +*/ + + +/* + usage: + + server_call(url, func, callback, ...); + + 'func' is a function name to call on the server + any additional arguments are passed to func() on the server + + The callback() function is called with the returned + object. 'callback' may be null. +*/ +function server_call(url, func, callback) { + var req = new XMLHttpRequest(); + req.open("POST", url, true); + req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); + var args = new Object(); + var i; + for (i=3;i<arguments.length;i++) { + args[i-3] = arguments[i]; + } + args.length = i-3; + req.send("func=" + func + "&args=" + encodeObject(args)); + req.onreadystatechange = function() { + if (4 == req.readyState && callback != null) { + var o = decodeObject(req.responseText); + callback(o.res); + } + } +} + |