var AjaxTool = {};

AjaxTool.fields = new Array;
AjaxTool.addField = function(name,value) {

	// Add a field to the list
	this.fields.push({'name':name,'value':value});
	
};
AjaxTool.clear = function() {

	// Remove all previously added fields
	this.fields = new Array;
	
	// Clear url
	this.url = '';
	
	// Clear response function
	this.responseFunction = null;
};
AjaxTool.url = '';
AjaxTool.app = {};
AjaxTool.responseFunction = null;
AjaxTool.send = function() {

	if (this.url == '')
	{
		Spry.Debug.trace('No url set for AjaxTool');
		return false;
	}
	if (this.responseFunction == null)
	{
		//Spry.Debug.trace('No response function set for AjaxTool');
		//return false;
		this.responseFunction = function() {};
	}
	var sendData = '';
	for (var i=0; i<this.fields.length; i++)
	{
		var field = this.fields[i];
		sendData += field.name + '=' + encodeURIComponent(field.value) + '&';
	}
	sendData += 'time='+unix_time();
	
	// Send data
	var rf = this.responseFunction;
	new Ajax.Request(this.url+'?'+sendData, {
	  onSuccess: function(response) {
	  		var obj = JSON.parse(response.responseText);
	  		if (rf) rf(obj);
	  }
	});
};