Stai proprio chiedendo la luna

codice:
<SCRIPT>
function faseLuna(DG) {          // RITORNA 5 SE C'E' LA LUNA PIENA
DR = new Date(2000,0,1);	// data di riferimento
TL = (((DG - DR) / 1000) + 2114500) % 2551443;
RV = 1
if (TL < 2508243)   	RV=8   //  CALANTE DA ULTIMO
if (TL < 1956782.25)	RV=7   //  ULTIMO QUARTO
if (TL < 1870382.25)	RV=6   //  CALANTE DA PIENA
if (TL < 1318921.5) 	RV=5   //  PIENA
if (TL < 1232521.5) 	RV=4   //  CRESCENTE DA PRIMO
if (TL < 681060.75) 	RV=3   //  PRIMO QUARTO
if (TL < 594660.75) 	RV=2   //  CRESCENTE DA NUOVA
if (TL < 43200)	   	RV=1   //  NUOVA
return  RV
}
// esempio: 
alert(faseLuna(new Date(2004,10,27)))
</SCRIPT>
ciao

ps: tradotto al volo dal VBScript: http://forum.html.it/forum/showthrea...hlight=luna%2A