function COMMON_mapQueryValues(a, prfx) {
	var ret="";
	for(var i=0; i<a.length; i++) {
		ret+=prfx+i+'='+a[i]+"&";
	}
	return ret;
}


function COMMON_isArray(obj) {
	if(obj==undefined) {
		return false;
	}
	return obj.constructor==Array;
}


function COMMON_jsonCall(url, data, onError, onSuccess, onComplete) {
	$.ajax({
	    url: url,
		cache: false,
	    type: 'POST',
	    data: data,
	    dataType: 'json',
	    timeout: 40000,
	    error: onError,
	    success: onSuccess,
	    complete: onComplete
	}); // End Ajax call.
}


function COMMON_jsonSyncCall(url, data, onError, onSuccess, onComplete) {
	$.ajax({
	    url: url,
		cache: false,
	    type: 'POST',
	    data: data,
	    dataType: 'json',
	    timeout: 8000,
	    async: false,
	    error: onError,
	    success: onSuccess,
	    complete: onComplete
	}); // End Ajax call.
}


function COMMON_buildDataString(data) {
	var s="";
	for(var i in data) {
		if(!COMMON_isArray(data[i])) {
			s+=i+"="+data[i]+"&";
		} else {
			s+=COMMON_mapQueryValues(data[i], i);
		}
	}
	var finalChar=s.substring(s.length-1);
	if(finalChar=="&") {
		s=s.substring(0, s.length-1);
	}
	return s;
}

function COMMON_analyzeIstat(code) {
	var o=new Object();
	o.codReg='';
	o.codPro='';
	o.codCom='';

	if(code=='') {
		return o;
	}
	if(code.length!=10) {
		return o; 
	}
	var pos1=code.indexOf('.');
	if(pos1<0) {
		return o;
	}
	var tmp=code.substring(pos1+1);
	var pos2=tmp.indexOf('.');
	if(pos2<0) {
		return o;
	}

	o.codReg=code.substring(0, pos1);
	o.codPro=tmp.substring(0, pos2);
	o.codCom=tmp.substring(pos2+1);
	return o;
}

