diff options
author | ivan <ivan> | 2009-12-31 13:16:41 +0000 |
---|---|---|
committer | ivan <ivan> | 2009-12-31 13:16:41 +0000 |
commit | 63a268637b2d51a8766412617724b9436439deb6 (patch) | |
tree | a50f6d4c7829d5c80905e989144317192a44dc90 /rt/share/html/NoAuth/js/ahah.js | |
parent | 65a561e3cd8c1ba94f6282f5d2a1cd9783afbd21 (diff) | |
parent | b4b0c7e72d7eaee2fbfc7022022c9698323203dd (diff) |
This commit was generated by cvs2svn to compensate for changes in r8690,
which included commits to RCS files with non-trunk default branches.
Diffstat (limited to 'rt/share/html/NoAuth/js/ahah.js')
-rw-r--r-- | rt/share/html/NoAuth/js/ahah.js | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/rt/share/html/NoAuth/js/ahah.js b/rt/share/html/NoAuth/js/ahah.js new file mode 100644 index 000000000..b10b27142 --- /dev/null +++ b/rt/share/html/NoAuth/js/ahah.js @@ -0,0 +1,48 @@ +/* +% $r->content_type('application/x-javascript'); +*/ +// Fetched from http://www.opendarwin.org/~drernie/src/ahah.js - No Copyright - Public Domain +function ahah(url, target, delay) { + // document.getElementById(target).innerHTML = 'Loading <a href="'+url+'">'+url +'</a>...'; + if (window.XMLHttpRequest) { + req = new XMLHttpRequest(); + } else if (window.ActiveXObject) { + req = new ActiveXObject("Microsoft.XMLHTTP"); + } + + var use_get; + if ( /webkit|firefox\/2/i.test( navigator.userAgent ) ) { + // seems safari has weird problem with post: + // it does remove the old content of target + // while doesn't replace that with new content + // so is firefox 2 + use_get = 1; + } + + if (req != undefined) { + req.onreadystatechange = function() {ahahDone(url, target, delay);}; + if ( use_get == 1 ) { + req.open("GET", url, true); + } + else{ + req.open("POST", url, true); + } + req.send(""); + } +} + +function ahahDone(url, target, delay) { + if (req.readyState == 4) { // only if req is "loaded" + if (req.status == 200) { // only if "OK" + document.getElementById(target).innerHTML = req.responseText; + } else { + document.getElementById(target).innerHTML="Error loading '"+url+"':\n"+req.statusText; + } + if (delay != undefined) { + setTimeout("ahah(url,target,delay)", delay); // resubmit after delay + //server should ALSO delay before responding + } + } +} + +% $m->abort(); |