biojs-rest-jsdas/src/jsdas.js
function(xhr){
			if (xhr && (xhr.readyState == 4)) {
				if (xmlloader.httpSuccess(xhr)) {
					processResponse(xhr);
				}
				else { //if it failed, it mighht be that the source has no CORS enabled. In such case, fallback to proxy before erroring
					if(usingCORS && xmlloader.proxyURL) { //if it failed when using CORS and we've got a proxy, try to get the data via the proxy
					  xhr=undefined;
					  usingCORS = false;
					  var new_xhr = xmlloader.xhr();
					  new_xhr.open('GET', xmlloader.proxyURL+'?url='+url, true);
					  new_xhr.onreadystatechange = function() {change(new_xhr);}
					  new_xhr.send(null);
					} else {
					  errorcallback && errorcallback({id: "xmlhttprequest_error", msg: xhr.status});
					}
				}
				//to prevent IE memory leaks
				xhr = undefined;
			} 
		}
function(xhr){
			if (xhr && (xhr.readyState == 4)) {
				if (xmlloader.httpSuccess(xhr)) {
					processResponse(xhr);
				}
				else { //if it failed, it mighht be that the source has no CORS enabled. In such case, fallback to proxy before erroring
					if(usingCORS && xmlloader.proxyURL) { //if it failed when using CORS and we've got a proxy, try to get the data via the proxy
					  xhr=undefined;
					  usingCORS = false;
					  var new_xhr = xmlloader.xhr();
					  new_xhr.open('GET', xmlloader.proxyURL+'?url='+url, true);
					  new_xhr.onreadystatechange = function() {change(new_xhr);}
					  new_xhr.send(null);
					} else {
					  errorcallback && errorcallback({id: "xmlhttprequest_error", msg: xhr.status});
					}
				}
				//to prevent IE memory leaks
				xhr = undefined;
			} 
		}
function ( xhr ) { if ( xhr && ( xhr . readyState == 4 ) ) { if ( xmlloader . httpSuccess ( xhr ) ) { processResponse ( xhr ) ; } else { //if it failed, it mighht be that the source has no CORS enabled. In such case, fallback to proxy before erroring if ( usingCORS && xmlloader . proxyURL ) { //if it failed when using CORS and we've got a proxy, try to get the data via the proxy xhr = undefined ; usingCORS = false ; var new_xhr = xmlloader . xhr ( ) ; new_xhr . open ( 'GET' , xmlloader . proxyURL + '?url=' + url , true ) ; new_xhr . onreadystatechange = function ( ) { change ( new_xhr ) ; } new_xhr . send ( null ) ; } else { errorcallback && errorcallback ( { id : "xmlhttprequest_error" , msg : xhr . status } ) ; } } //to prevent IE memory leaks xhr = undefined ; } }
necessary so the closures get the variable
necessary so the closures get the variable