function ReTrim(stringa){
	var str=''
	str = stringa.replace(/^ +/,'')
	str = str.replace(/ +$/,'')
	return str
}
	
function GetLayerByNameGeneric(divname) {
	
	var obj_layer = '';
	
	if (document.getElementById) { // DOM3 = IE5, NS6 
		obj_layer = document.getElementById(divname)
	} 
	else { 
		if (document.layers) { // Netscape 4 
			obj_layer = eval('document.'+divname);
		} 
		else { // IE 4 
			obj_layer = eval('document.all.'+divname);
		} 
	}
	
	return obj_layer

}

function hideDiv(divname) {

	var erdiv = GetLayerByNameGeneric(divname);
	
	if (document.layers) {
		erdiv.visibility = 'hidden';
	}
	else {
		erdiv.style.visibility = 'hidden';
	}
	
}

function showDiv(divname) {

	var erdiv = GetLayerByNameGeneric(divname);
	
	if (document.layers) {
		erdiv.visibility = 'visible';
	}
	else {
		erdiv.style.visibility = 'visible';
	}
	
}

var imgESPANDI = new Image(20, 20);
imgESPANDI.src = '/img/espandi.gif';
	
var imgCOMPRIMI = new Image(20, 20);
imgCOMPRIMI.src = '/img/comprimi.gif';

function eval_josko(stringa) {
	//alert(stringa + ' ==> ' + eval(stringa));
	return eval(stringa);
}

function VisualizzaLayerSezione(nomesezione, azionelayer) {
	
	var divimg = eval('document.images[\'img_'+nomesezione+'\']');
	var divon = GetLayerByNameGeneric('div_'+nomesezione + '_on');
	var divview = GetLayerByNameGeneric('div_'+nomesezione);
	var html_temp = '';
	
	if (eval_josko('document.forms[0].stato_'+nomesezione) && divimg) {
		
		var bolChange = false;
		
		if (azionelayer == 'on') {
			if (eval_josko('document.forms[0].stato_'+nomesezione+'.value == \'True\'')) {
				bolChange = false;
			}
			else {
				bolChange = true;
			}
		}
		else if (azionelayer == 'off') {
			if (eval_josko('document.forms[0].stato_'+nomesezione+'.value == \'True\'')) {
				bolChange = true;
			}
			else {
				bolChange = false;
			}
		}
		else {
			bolChange = true;
		}
		
		if (bolChange == true) {
		
			if (eval_josko('document.forms[0].stato_'+nomesezione+'.value == \'False\'')) {
				divimg.src = imgCOMPRIMI.src;
				eval_josko('document.forms[0].stato_'+nomesezione+'.value = \'True\';');
			}
			else {
				divimg.src = imgESPANDI.src;
				eval_josko('document.forms[0].stato_'+nomesezione+'.value = \'False\';');
			}
			
			html_temp = divview.innerHTML;
			divview.innerHTML = divon.innerHTML;
			divon.innerHTML = html_temp;
			
		}
	
	}

}
	
function CentraFinestra(windowobj, w, h) {
		screenHeight = screen.height;
		screenWidth = window.screen.width;
		x = Math.ceil( (window.screen.width  - w) / 2 );
		y = Math.ceil( (window.screen.height  - h) / 2 );
		frmCenter = windowobj;
		frmCenter.moveTo(x,y);
		frmCenter.focus();
}

function InStr(String1, String2) {

	var a = 0;

	if (String1 == null || String2 == null) return (false);

	String1 = String1.toLowerCase();
	String2 = String2.toLowerCase();

	a = String1.indexOf(String2);
	
	if (a == -1)
		return 0;
	else
		return a + 1;
	
}

function SvuotaCombo(nome_combo) {
	
	var count = eval('document.forms[0].'+nome_combo+'.options.length;');
		
	while (count > 0){
		for(n = 0; n < count; n++){
			eval('document.forms[0].'+nome_combo+'.options[n] = null;');
		}
		count = eval('document.forms[0].'+nome_combo+'.options.length;');
	}
	
}
	
function PopolaCombo(nome_combo, arrComboID, arrComboDES, countItems, itemIndex, emptyItem) {
		
	SvuotaCombo(nome_combo);
	var comboIndex = 0;
		
	if (emptyItem != '') {
		NewItem = new Option(emptyItem, '-1');
		eval('document.forms[0].'+nome_combo+'.options[document.forms[0].'+nome_combo+'.length] = NewItem;');
		comboIndex = comboIndex + 1;
	}
		
	for (k = 0; k < countItems; k++) {
		NewItem = new Option(arrComboDES[k], arrComboID[k]);
		eval('document.forms[0].'+nome_combo+'.options[document.forms[0].'+nome_combo+'.length] = NewItem;');
		if (arrComboID[k] == itemIndex) {
			comboIndex = comboIndex + k;
		}
	}
		
		
	strEval = 'document.forms[0].'+nome_combo+'.length < ' + (comboIndex + 1)
		
	if (eval(strEval) || parseInt(itemIndex) <= 0) {
		comboIndex = 0;
	}
		
	eval('document.forms[0].'+nome_combo+'.options[comboIndex].selected = true;');
		
}
	
function FiltraComboPadreFiglio(combo1, combo2, arr1, arr2, index1, index2, emptyItem1, emptyItem2) {
		
	//combo1 = nome combo padre
	//combo2 = nome combo figli
		
	//arr1 = nome variabile di tipo array per le voci padre
	//arr2 = nome variabile di tipo array per le voci figlio
		
	if (index1 == '') {
		index1 = eval('document.forms[0].'+combo1+'.options[document.forms[0].'+combo1+'.selectedIndex].value;');
	}
		
	if (index2 == '') {
		index2 = '0';
	}
		
	var arrPadreID = eval(arr1+'_id');
	var arrPadreDES = eval(arr1+'_des');
	var countPadre = eval(arr1+'_c');
		
	PopolaCombo(combo1, arrPadreID, arrPadreDES, countPadre, index1, emptyItem1);
		
	index1 = parseInt(index1);
		
	if (index1 > 0) {
		
		var arrFigliID = eval(arr2+index1+'_id');
		var arrFigliDES = eval(arr2+index1+'_des');
		var countFigli = eval(arr2+index1+'_c');
		
		PopolaCombo(combo2, arrFigliID, arrFigliDES, countFigli, index2, emptyItem2);
	}
	else {
			
		PopolaCombo(combo2, '', '', 0, '', '<-- selezionare una voce...');
			
	}
		
}

//+ Jonas Raoni Soares Silva
//@ http://jsfromhell.com/string/pad [v1.0]

String.prototype.pad = function(l, s, t){
    return s || (s = " "), (l -= this.length) > 0 ? (s = new Array(Math.ceil(l / s.length)
        + 1).join(s)).substr(0, t = !t ? l : t == 1 ? 0 : Math.ceil(l / 2))
        + this + s.substr(0, l - t) : this;
};

function FormatNumber(num, decimalNum, bolLeadingZero, bolParens, bolCommas) {
    
	if (isNaN(parseInt(num))) return "NaN";

	var tmpNum = num;
	var iSign = num < 0 ? -1 : 1;		// Get sign of number
		
	// Adjust number so only the specified number of numbers after
	// the decimal point are shown.
	tmpNum *= Math.pow(10,decimalNum);
	tmpNum = Math.round(Math.abs(tmpNum))
	tmpNum /= Math.pow(10,decimalNum);
	tmpNum *= iSign;					// Readjust for sign
		
	// Create a string object to do our formatting on
	var tmpNumStr = new String(tmpNum);
	
	if (tmpNumStr.indexOf(".") < 1) {
		var str_decimals = new String('');
		tmpNumStr = tmpNumStr + ',' + str_decimals.pad(decimalNum, '0', 1);
	}
	else  {
		tmpNumStr = tmpNumStr.replace('.', ',');
		var posSeparator = tmpNumStr.indexOf(",")
		if (posSeparator > (tmpNumStr.length - decimalNum - 1)) {
			tmpNumStr = tmpNumStr.pad(posSeparator + decimalNum + 1, '0', 1);
		}
	}

	// See if we need to strip out the leading zero or not.
	if (!bolLeadingZero && num < 1 && num > -1 && num != 0)
		if (num > 0)
			tmpNumStr = tmpNumStr.substring(1,tmpNumStr.length);
		else
			tmpNumStr = "-" + tmpNumStr.substring(2,tmpNumStr.length);
			
	// See if we need to put in the commas
	if (bolCommas && (num >= 1000 || num <= -1000)) {
		var iStart = tmpNumStr.indexOf(",");
		if (iStart < 0)
			iStart = tmpNumStr.length;

		iStart -= 3;
		while (iStart >= 1) {
			tmpNumStr = tmpNumStr.substring(0,iStart) + "." + tmpNumStr.substring(iStart,tmpNumStr.length)
			iStart -= 3;
		}		
	}

	// See if we need to use parenthesis
	if (bolParens && num < 0)
		tmpNumStr = '(' + tmpNumStr.substring(1,tmpNumStr.length) + ')';

	return tmpNumStr;		// Return our formatted string!

}

function LeggiCampoEuro(strcampo) {
	
	var campoeur = new String(strcampo);
	campoeur = campoeur.replace('.', '');
	campoeur = campoeur.replace(',', '.');
	
	return parseFloat(campoeur);
	
}

var pgreload = '';

function RicaricaPagina() {
	
	if (pgreload != '') {
		top.location.href = pgreload;	
	}
	else {
		top.location.reload();
	}

}

function LCase(STRING) {
	return STRING.toLowerCase();
}

function UCase(STRING) {
	return STRING.toUpperCase();
}

function Left(STRING, CHARACTER_COUNT) {
	return STRING.substring(0, CHARACTER_COUNT);
}

function Len(STRING){
	return STRING.length;
}

function Mid(STRING,START,END) {
	if(!START){START=0};
	if(!END || END > STRING.length){END=STRING.length};
	if(END!=STRING.length){END = START + END};
	return STRING.substring(START,END);
}


function Right(STRING, CHARACTER_COUNT) {
	return STRING.substring((STRING.length - CHARACTER_COUNT),STRING.length);

}

function LeggiValoreRadio(nomeradio, idform) { 
	
	var valore = '';
	
	for(i = 0; i < document.forms[idform].elements.length; i++) {
		if (document.forms[idform].elements[i].name == nomeradio && document.forms[idform].elements[i].type == 'radio') {
			if (document.forms[idform].elements[i].checked == true) {
				valore = document.forms[idform].elements[i].value;
			}
		}
	}
	
	return valore

}


function GetCount() {

	dateNow = new Date();								//grab current date
	amount = dateFuture.getTime() - dateNow.getTime();		//calc milliseconds between dates
	delete dateNow;

	// time is already past
	if(amount < 0){
		document.getElementById('countbox').innerHTML="Now!";
	}
	// date is still good
	else{
		days=0;hours=0;mins=0;secs=0;out="";

		amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs

		days=Math.floor(amount/86400);//days
		amount=amount%86400;

		hours=Math.floor(amount/3600);//hours
		amount=amount%3600;

		mins=Math.floor(amount/60);//minutes
		amount=amount%60;

		secs=Math.floor(amount);//seconds

		if(days != 0){out += days +" giorn"+((days!=1)?"i":"o")+", ";}
		if(days != 0 || hours != 0){out += hours +" or"+((hours!=1)?"e":"a")+", ";}
		if(days != 0 || hours != 0 || mins != 0){out += mins +" minut"+((mins!=1)?"i":"o")+", ";}
		out += secs +" secondi";
		document.getElementById(divCountName).innerHTML= 'Mancano ' + out + ':';

		setTimeout("GetCount()", 1000);
	}
}
