function dateAdd(date,value,interval)
{
	try
	{
	// se la data non è buona lancio l'eccezione
		var re1=new RegExp('^[0-9]{1,2}\-[0-9]{1,2}\-[0-9]{4}$');
		var re2=new RegExp('^[0-9]{1,2}\-[0-9]{1,2}\-[0-9]{4} [0-9]{1,2}:[0-9]{1,2}$');
		
		if (!re1.test(date) && !re2.test(date))
			throw new Error('Bad date format!');
	
	// se value non è buono lancio l'eccezione
		re1=new RegExp('^[0-9]+$');
		if (!re1.test(value))
			throw new Error('Bad value!');
			
		var tmp=date.split(' ');
		
		var dateParts=tmp[0].split('-');
		
		var timeParts=new Array();
		if (tmp.length==2)
		{
			timeParts=tmp[1].split(':');
		}
		else
		{
			timeParts[0]=0;
			timeParts[1]=0;
		}
		
		var refDate=new Date();
		refDate.setDate(dateParts[0]);
		refDate.setMonth(dateParts[1]-1);	
		refDate.setFullYear(dateParts[2]);
		refDate.setHours(timeParts[0],timeParts[1],0,0);
		
		//console.debug('-->'+refDate);
		
		switch (interval)
		{
			case 'd':	// aggiungo i giorni
				refDate.setDate(refDate.getDate()+value);
				break;
			
			case 'm':	// aggiungo i mesi
				refDate.setMonth(refDate.getMonth()+value);
				break;
				
			case 'y':	// aggiungo gli anni
				refDate.setFullYear(refDate.getFullYear()+value);
				break;
				
			default:
				throw new Error('Bad interval!');
			
		}	
		
		
		//console.debug(refDate);
		
		var dd=refDate.getDate();
		var mm=refDate.getMonth()+1;
		var yy=refDate.getFullYear();
		var hh=refDate.getHours();
		var ii=refDate.getMinutes();
		
		if (dd.toString().length==1)
			dd='0' + dd;
			
		if (mm.toString().length==1)
			mm='0' + mm;
			
		if (hh.toString().length==1)
			hh='0' +hh;
			
		if (ii.toString().length==1)
			ii='0' + ii;
		
		var ss='00';
		
		//console.debug(dd + '-' + mm + '-' + yy + ' ' + hh +':' + ii + ':' + ss);
		
		return dd + '-' + mm + '-' + yy + ' ' + hh +':' + ii + ':' + ss;
	}
	catch (e)
	{
	alert(e.toString());
	}

}

function popup(WhatURL,Title,W,H) 
{
	alfa=window.open(WhatURL ,Title, "scrollbars=yes,toolbar=no,directories=no,menubar=no,width=" + W + ",height=" + H);
	alfa.resizeTo(W, H);
	alfa.focus();
}
