﻿function Log10(x){
   return( Math.log(x) / Math.log(10) );
};

function limitaDecimali(num, numDec){
	var numStringa = new String(parseFloat(num))
	var i=z=0; 
	var numLimitato=textNum="" 
	while(i<numStringa.length && textNum != '.' ){
		textNum = numStringa.charAt(i++)
		numLimitato+=textNum
	}
	while(i<numStringa.length && z++<numDec){
		textNum = numStringa.charAt(i++)
		numLimitato+=textNum
	}
	if(numStringa.indexOf('.')==-1)numLimitato+='.';
	while(z++<numDec)numLimitato+='0';
	return numLimitato
}

function daVirgolaApunto(inp){

	var regexp = /,/g
	var pNum = inp.replace(regexp, ".");
	return pNum

}



function calcolaF ()
{

var tuttoOK=true;

theForm = document.forms[1];

vita = theForm.vita.value; if (vita=="") { alert("mancano dati, controlla"); theForm.vita.focus(); tuttoOK=false;} else {vita = daVirgolaApunto(theForm.vita.value) }; //alert(vita);
collo = theForm.collo.value; if (collo=="") { alert("mancano dati, controlla"); theForm.collo.focus(); tuttoOK=false;} else {collo = daVirgolaApunto(theForm.collo.value) };
altezza = theForm.altezza.value; if (altezza=="") { alert("mancano dati, controlla"); theForm.altezza.focus(); tuttoOK=false;} else {altezza = daVirgolaApunto(theForm.altezza.value) };
peso = theForm.peso.value; if (peso=="") { alert("mancano dati, controlla"); theForm.peso.focus(); tuttoOK=false;} else {peso = daVirgolaApunto(theForm.peso.value) };
polso = theForm.polso.value; if (polso=="") { alert("mancano dati, controlla"); theForm.polso.focus(); tuttoOK=false;} else {polso = daVirgolaApunto(theForm.polso.value) };
avambraccio = theForm.avambraccio.value; if (avambraccio=="") { alert("mancano dati, controlla"); theForm.avambraccio.focus(); tuttoOK=false;} else {avambraccio = daVirgolaApunto(theForm.avambraccio.value) };
anche = theForm.anche.value; if (anche=="") { alert("mancano dati, controlla"); theForm.anche.focus(); tuttoOK=false;} else {anche = daVirgolaApunto(theForm.anche.value) };

	if (tuttoOK) {
		
		percentuale1 = (105.3 * Log10(peso)) - (0.2 * polso) - (0.533 * collo) - (1.574 * avambraccio) + (0.173 * anche) - (0.515 * altezza) - 35.6;// alert(percentuale1);
		percentuale2 = (163.205 * Log10(((vita/2.54 + anche/2.54) - collo/2.54))) - (97.684 * Log10(altezza/2.54)) - 78.387; //alert(percentuale2);
		percmedia = limitaDecimali(((percentuale1 + percentuale2*2) / 3),1);
		theForm.percentuale.value = percmedia;
		massamagra = limitaDecimali((peso - peso/100*percmedia),1);
		theForm.mm.value = massamagra;
		proteine = theForm.attivita.value * massamagra;
		theForm.proteine.value = limitaDecimali(proteine,1);
		blocchi = limitaDecimali((proteine / 7),1);
		theForm.blocchi.value = blocchi;
		if (blocchi < 11) {alert("ATTENZIONE: il valore minimo consigliato dagli autori della Dieta Zona e' di 11 blocchi, click OK per maggiori informazioni"); window.open("cosa-fare-sotto-11-blocchi.htm")}		
	
	} else {
	theForm.percentuale.value = "err"
	theForm.mm.value = "err"
	theForm.proteine.value = "err"
	theForm.blocchi.value = "err"
	}	
	
}

function calcolaM ()
{

var tuttoOK=true;

theForm = document.forms[0];

peso = theForm.peso.value; if (peso=="") { alert("mancano dati, controlla"); theForm.peso.focus(); tuttoOK=false;} else {peso = daVirgolaApunto(theForm.peso.value) };
addome = theForm.addome.value; if (addome=="") { alert("mancano dati, controlla"); theForm.addome.focus(); tuttoOK=false;} else {addome = daVirgolaApunto(theForm.addome.value) };
collo = theForm.collo.value; if (collo=="") { alert("mancano dati, controlla"); theForm.collo.focus(); tuttoOK=false;} else {collo = daVirgolaApunto(theForm.collo.value) };
altezza = theForm.altezza.value; if (altezza=="") { alert("mancano dati, controlla"); theForm.altezza.focus(); tuttoOK=false;} else {altezza = daVirgolaApunto(theForm.altezza.value) };
	
	
	if (tuttoOK) {
	
		percentuale1 = (76.5 * Log10(addome - collo)) - (68.7 * Log10(altezza)) + 46.9; //alert(percentuale1);
		percentuale2 = (86.01 * Log10((addome/2.54 - collo/2.54))) - (70.041 * Log10(altezza/2.54)) + 36.76; //alert(percentuale2);
		percmedia = limitaDecimali(((percentuale1 + percentuale2*2) / 3),1);
		theForm.percentuale.value = percmedia;
		massamagra = limitaDecimali((peso - peso/100*percmedia),1);
		theForm.mm.value = massamagra;
		proteine = theForm.attivita.value * massamagra;
		theForm.proteine.value = limitaDecimali(proteine,1);
		blocchi = limitaDecimali((proteine / 7),1);
		theForm.blocchi.value = blocchi;
		if (blocchi < 11) {alert("ATTENZIONE: il valore minimo consigliato dagli autori della Dieta Zona e' di 11 blocchi, fate click sul link -> Cosa fare se il tuo fabbisogno è sotto agli 11 blocchi - a fondo pagina"); 
		// window.open("cosa-fare-sotto-11-blocchi.htm")
		}
	} else {
	theForm.percentuale.value = "err"
	theForm.mm.value = "err"
	theForm.proteine.value = "err"
	theForm.blocchi.value = "err"
	}	


}


