﻿var _XMLHTTP_Request = null;
			var _IsIE = true;
			function XMLHTTPGet(url, callback, returnType) {
				GetXMLHTTP();
				_XMLHTTP_Request.onreadystatechange = function() { XMLHTTPCallback(callback, returnType); };
				_XMLHTTP_Request.open('GET',url,true);
				_XMLHTTP_Request.send(null); 
				}

			function XMLHTTPPost(url, callback, data, returnType) {
			GetXMLHTTP();
				_XMLHTTP_Request.onreadystatechange = function() { XMLHTTPCallback(callback, returnType); };
				_XMLHTTP_Request.open('POST',url,true);
				_XMLHTTP_Request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
				_XMLHTTP_Request.setRequestHeader("Content-length", data.length);
				_XMLHTTP_Request.setRequestHeader("Connection", "close");
				_XMLHTTP_Request.send(data); 
			}

			function XMLHTTPCallback(callback, returnType) {
					if(_XMLHTTP_Request.readyState == 4) {
						if(_XMLHTTP_Request.status == 200) {
							if(!callback || callback == '')
								return;
							if(!returnType)
								returnType = ''
							var returnValue = null;
							if(returnType == 'JSON')
								returnValue = eval('(' + _XMLHTTP_Request.responseText + ')');
							else if(returnType == 'XML')
								returnValue = LoadXMLDoc(_XMLHTTP_Request.responseText);
							else
								returnValue = _XMLHTTP_Request.responseText;
								callback(returnValue);
							} 
					}
				}

			function GetXMLHTTP() {
				_XMLHTTP_Request = null;
				if(window.ActiveXObject)
					_XMLHTTP_Request = new ActiveXObject('Msxml2.XMLHTTP');
				else {
					_IsIE = false;
					_XMLHTTP_Request = new XMLHttpRequest(); 
				}
			}
			
			function LoadXMLDoc(str) {
				if(!_IsIE) {
					var objDOMParser = new DOMParser();
					var xmlDoc = objDOMParser.parseFromString(str, 'text/xml');
				}
				else {
					var xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
					xmlDoc.loadXML(str);
				}
				xmlDoc.async='false';
				return xmlDoc;
			}

