function rJSON(baseDir){
	if(baseDir){
		this.baseDir = baseDir;
	}else{
		this.baseDir = "";
	}
	
	var xmlHttp;
	try{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e){
  	// Internet Explorer
		try{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e){
			try{
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e){
				alert("Your browser does not support AJAX!");
				return false;
			}
		}
	}
	this.connection = xmlHttp;
	
	this.getData = function(url, params){
		var queryElements = new Array();
		var query = new String();
		var i, j;
	
		if(params != false){
			j = 0;
			for(i in params){
				queryElements[j++] = i + "=" + encodeURIComponent(params[i]);
			}
			query = query.concat(this.baseDir, url, "?", queryElements.join("&"));
		}else{
			query = query.concat(this.baseDir, url);
		}
		//alert(query);
		this.connection.open("GET", query, false);
		this.connection.send(null);
		if(this.connection.status != 200){
			alert("There was a HTTP error " + this.connection.status + "\n" + this.connection.statusText);
			return false;
		}
		//alert(this.connection.responseText);
		eval("var result = " + this.connection.responseText);
		return result;
	}
}
