summaryrefslogtreecommitdiff
path: root/fs_selfservice/FS-SelfService/cgi/send_xmlhttp.html
diff options
context:
space:
mode:
authorJonathan Prykop <jonathan@freeside.biz>2015-12-02 05:02:17 -0600
committerJonathan Prykop <jonathan@freeside.biz>2015-12-14 20:22:09 -0600
commit8cd6e05d5d906da6b001b36bab5aa87ecdfca944 (patch)
tree4ad1a33fa011bc8a5b84bea69b9afebb6bd5d110 /fs_selfservice/FS-SelfService/cgi/send_xmlhttp.html
parent4ff9a50fe7f35179314967d71ae66b696ab006c5 (diff)
RT#29354: Password Security in Email [xmlhttp validation for selfservice]
Diffstat (limited to 'fs_selfservice/FS-SelfService/cgi/send_xmlhttp.html')
-rw-r--r--fs_selfservice/FS-SelfService/cgi/send_xmlhttp.html45
1 files changed, 45 insertions, 0 deletions
diff --git a/fs_selfservice/FS-SelfService/cgi/send_xmlhttp.html b/fs_selfservice/FS-SelfService/cgi/send_xmlhttp.html
new file mode 100644
index 000000000..ac85cb2f7
--- /dev/null
+++ b/fs_selfservice/FS-SelfService/cgi/send_xmlhttp.html
@@ -0,0 +1,45 @@
+<SCRIPT>
+function rs_init_object () {
+ var A;
+ try {
+ A=new ActiveXObject("Msxml2.XMLHTTP");
+ } catch (e) {
+ try {
+ A=new ActiveXObject("Microsoft.XMLHTTP");
+ } catch (oc) {
+ A=null;
+ }
+ }
+ if(!A && typeof XMLHttpRequest != "undefined")
+ A = new XMLHttpRequest();
+ if (!A)
+ alert("Can't create XMLHttpRequest object");
+ return A;
+}
+
+function send_xmlhttp (url,args,callback) {
+ args = args || [];
+ callback = callback || function (data) { return data };
+ var content = '';
+ for (var i = 0; i < args.length; i = i + 2) {
+ content = content + "&" + args[i] + "=" + escape(args[i+1]);
+ }
+ content = content.replace( /[+]/g, '%2B'); // fix unescaped plus signs
+
+ var xmlhttp = rs_init_object();
+ xmlhttp.open("POST", url, true);
+
+ xmlhttp.onreadystatechange = function() {
+ if (xmlhttp.readyState != 4)
+ return;
+ if (xmlhttp.status == 200) {
+ var data = xmlhttp.responseText;
+ callback(data);
+ }
+ };
+
+ xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
+ xmlhttp.send(content);
+}
+</SCRIPT>
+