function AjaxTool2()
{
	var obj = new Object;
	obj.fields = new Array;
	obj.addField = function(name,value) {
	
		// Add a field to the list
		this.fields.push({'name':name,'value':value});
		
	};
	obj.clear = function() {
	
		// Remove all previously added fields
		this.fields = new Array;
		
		// Clear url
		this.url = '';
		
		// Clear response function
		this.responseFunction = null;
	};
	obj.url = '';
	obj.app = {};
	obj.responseFunction = null;
	obj.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, {
		  method: 'post',
		  parameters: sendData,
		  onSuccess: function(response) {
		  		var obj = JSON.parse(response.responseText);
		  		if (rf) rf(obj);
		  }
		});
	};
	return obj;
}
