netedit.ajax = {
	
	init: function() {
		this.parentElementId = '';
	},
	
	formSend: function(form, params) {
		var options = {
			method: 'get',
			onFailure : function() {
				alert("AJAX Failure:\n Non &egrave; stato possibile eseguire la richiesta correttamente");
				netedit.ajax.hideLoading();
			},
			onCancel : function() {
				alert("AJAX Cancel:\n Richiesta interrotta");
				netedit.ajax.hideLoading();
			},
			onRequest : function() {
				
			},
			onComplete : function() {
				
			}
		};
		
		options = $merge(options,params);
		
		form.set('send',options).send();
	},
	
	getData: function(url, params) {
		var data = '';
		if($chk(params.data)){
			data = params.data;
			params.data = null;
		}
		
		var options = {
			url: url,
			method: 'get',
			onFailure : function() {
				netedit.ajax.hideLoading();
				alert("AJAX Failure:\n Non e' stato possibile eseguire la richiesta correttamente");
				
			},
			onCancel : function() {
				netedit.ajax.hideLoading();
				alert("AJAX Cancel:\n Richiesta interrotta");
				
			},
			onRequest : function() {
				
			},
			onComplete : function() {
				
			}
		};
		
		options = $merge(options,params);
		
		//new Request({'url':url[, options]}).send([datastring]);
		var ajax = new Request(options);
		ajax.send(data);
	},
	
	go: function(a, idElement){
		var url = '';
		if(typeOf(a)=='string'){
			url = a;
		}else{
			if(a.get('href')){
				url = a.get('href');	
			}
		}
		netedit.ajax.getData(
			url,
			{
				method: 'get',
				onComplete: function(txt){
					$(idElement).set('html',txt);
				},
				onRequest : function() {
					netedit.ajax.showLoading(idElement);
				}
			}
		);
		return false;
	},
	
	showLoading: function(parentElemntId){
		if(typeOf(parentElemntId)=='string'){
			this.parentElementId = parentElemntId;
			var parentEl = $(this.parentElementId);
		}else{
			var parentEl = parentElemntId;
		}
		
		if(parentEl){
			parentEl.set('html','<div style="position:relative;" align="center"><img src="imgs/32x32/loading.gif" id="loadImg" align="absmiddle"> <span id="loadText">Loading...</span></div>');
		}
	},
	
	hideLoading: function(){
		var parentEl = $(this.parentElementId);
		if(parentEl){
			parentEl.set('html','');
		}
	}
};
/**
 ********* ESEMPIO ********
netedit.ajax.getData(
	url, 
	{
		onComplete: function(txt){
			netedit.ajax.hideLoading();
		    var resp = eval('(' + txt + ')');
		}.bind(this),
		onRequest : function() {
			netedit.ajax.showLoading(loadingContainerId);
		}.bind(this)
	}
);
*/
