$(document).ready(function() {

	$.ajaxSetup({ cache: false });

	
	$.ajaxPrefilter( function( options ) {
		if(jQuery.browser.msie && parseInt(jQuery.browser.version) < 8) {
		  //if ( options.crossDomain ) {
		    options.url = "Proxy.aspx?url=" +  options.url ;
		    options.crossDomain = false;
		  //}
		}
		if(window.location.href.indexOf('debug')>0) {
			//alert("hello" + options.url);
		}
	});
	

	$.ajaxTransport("+*", function( options, originalOptions, jqXHR ) {

		if(jQuery.browser.msie && parseInt(jQuery.browser.version) >= 8 && window.XDomainRequest) {
			
			var xdr;
			
			return {
				
				send: function( headers, completeCallback ) {

					// Use Microsoft XDR
					xdr = new XDomainRequest();
					
					//var new_url = options.url;
					//if(parseInt(jQuery.browser.version) < 8)
					//{
						//TC: modify URL to go throug Proxy page
						//var new_url = "/Proxy.aspx?url=" + options.url;
					//}

					xdr.open("get", options.url);

					if(window.location.href.indexOf('debug')>0) {
                        alert("AJAX:"+ jQuery.browser.version + " -- " + options.url);
                      }
					
					xdr.onload = function() {
						
						if(this.contentType.match(/\/xml/)){
							
							var dom = new ActiveXObject("Microsoft.XMLDOM");
							dom.async = false;
							dom.loadXML(this.responseText);
							completeCallback(200, "success", [dom]);
							
						}else{
							
							completeCallback(200, "success", [this.responseText]);
							
						}



					};
					
					xdr.ontimeout = function(){
						completeCallback(408, "error", ["The request timed out."]);
					};
					
					xdr.onerror = function(){
						completeCallback(404, "error", ["The requested resource could not be found."]);
					};
					
					xdr.send();
			  },
			  abort: function() {
				  if(xdr)xdr.abort();
			  }
			};
		}
	});
});
