Stamp = new Date();
month = Stamp.getMonth()+1;
day = Stamp.getDate();
Yr = Stamp.getYear();
if (Yr < 2000) Yr = 1900 + year;

ut = 5;

G = 2-parseInt((Yr -1)/100)+parseInt(parseInt((Yr -1)/400));

if(Yr/4 == parseInt(Yr/4))leapornot="leap";else leapornot="nonleap";

if(Yr/100 == parseInt(Yr/100))
{if(Yr/400 == parseInt(Yr/400)){leapornot="leap";}
else{leapornot="nonleap"}}

if(month==1)Mday1=1;
else if(month==2)Mday1=32;
else if(month==3)Mday1=60;
else if(month==4)Mday1=91;
else if(month==5)Mday1=121;
else if(month==6)Mday1=152;
else if(month==7)Mday1=182;
else if(month==8)Mday1=213;
else if(month==9)Mday1=244;
else if(month==10)Mday1=274;
else if(month==11)Mday1=305;
else Mday1=335;

if(leapornot == "leap")
{if(month>2){Mday1=Mday1+1;}
else{Mday1=Mday1}}

Yday=Mday1+day-1

jd = parseInt(365.25*(Yr+4712+3))-3*365 - 0.5 + G + ut/24 - 1 + Yday


var t = new Array();
var L = new Array();
var M = new Array();
var C = new Array();
var Sun = new Array();
var lon = new Array();
var Lmoon = new Array();
var Ph1 = new Array();
var wanwax = new Array();
var Ph = new Array();
var lunation = new Array();

for (i=0;i<=31;i++) t[i]=(jd-i-2451545)/36525;

for (i=0;i<=31;i++) L[i]=280.46646+36000.76983*t[i]+0.0003032*Math.pow(t[i],2);
for (i=0;i<=31;i++) L[i]= L[i] - 360*(parseInt(L[i]/360));
for (i=0;i<=31;i++) if(L[i]<0) L[i] = L[i] + 360; else L[i] = L[i];

for (i=0;i<=31;i++) M[i]=357.5291092+35999.0502909*t[i]-0.0001536*Math.pow(t[i],2);
for (i=0;i<=31;i++) M[i]= M[i] - 360*(parseInt(M[i]/360));
for (i=0;i<=31;i++) if(M[i]<0) M[i] = M[i] + 360; else M[i] = M[i];

for (i=0;i<=31;i++) C[i]=(1.914602-0.004817*t[i]-0.000014*Math.pow(t[i],2))*Math.sin(M[i]*Math.PI/180) + (0.019993-0.0001*t[i])*Math.sin(2*M[i]*Math.PI/180)+0.000289*Math.sin(3*M[i]*Math.PI/180);

for (i=0;i<=31;i++) Sun[i]=L[i]+C[i];
for (i=0;i<=31;i++) Sun[i]= Sun[i] - 360*(parseInt(Sun[i]/360));
for (i=0;i<=31;i++) if(Sun[i]<0) Sun[i] = Sun[i] + 360; else Sun[i] = Sun[i];

for (i=0;i<=31;i++) lon[i]= Sun[i] - 0.00569 - 0.00478*Math.sin((125.04-1934.136*t[i])*Math.PI/180);

for (i=0;i<=31;i++) Lmoon[i]=218.3164477+481267.88123421*t[i]-0.0015786*Math.pow(t[i],2)+Math.pow(t[i],3)/538841-Math.pow(t[i],4)/65194000;
for (i=0;i<=31;i++) Lmoon[i]= Lmoon[i] - 360*(parseInt(Lmoon[i]/360));
for (i=0;i<=31;i++) if(Lmoon[i]<0) Lmoon[i] = Lmoon[i] + 360; else Lmoon[i] = Lmoon[i];

for (i=0;i<=31;i++) Ph1[i]=0.5*(1-Math.cos((Lmoon[i]-lon[i])*Math.PI/180));

for (i=0;i<=30;i++) if(Ph1[i]>Ph1[i+1]) wanwax[i]=1; else wanwax[i]=0;

for (i=0;i<=30;i++) if(wanwax[i]==0) Ph[i]=2-Ph1[i]; else Ph[i]=Ph1[i];

lunation[30]=Ph[30]/2*29.530589;

if(wanwax[29]>wanwax[30]) lunation[29]=1; else lunation[29]=lunation[30]+28/29.530589;
if(wanwax[28]>wanwax[29]) lunation[28]=1; else lunation[28]=lunation[29]+28/29.530589;
if(wanwax[27]>wanwax[28]) lunation[27]=1; else lunation[27]=lunation[28]+28/29.530589;
if(wanwax[26]>wanwax[27]) lunation[26]=1; else lunation[26]=lunation[27]+28/29.530589;
if(wanwax[25]>wanwax[26]) lunation[25]=1; else lunation[25]=lunation[26]+28/29.530589;
if(wanwax[24]>wanwax[25]) lunation[24]=1; else lunation[24]=lunation[25]+28/29.530589;
if(wanwax[23]>wanwax[24]) lunation[23]=1; else lunation[23]=lunation[24]+28/29.530589;
if(wanwax[22]>wanwax[23]) lunation[22]=1; else lunation[22]=lunation[23]+28/29.530589;
if(wanwax[21]>wanwax[22]) lunation[21]=1; else lunation[21]=lunation[22]+28/29.530589;
if(wanwax[20]>wanwax[21]) lunation[20]=1; else lunation[20]=lunation[21]+28/29.530589;
if(wanwax[19]>wanwax[20]) lunation[19]=1; else lunation[19]=lunation[20]+28/29.530589;
if(wanwax[18]>wanwax[19]) lunation[18]=1; else lunation[18]=lunation[19]+28/29.530589;
if(wanwax[17]>wanwax[18]) lunation[17]=1; else lunation[17]=lunation[18]+28/29.530589;
if(wanwax[16]>wanwax[17]) lunation[16]=1; else lunation[16]=lunation[17]+28/29.530589;
if(wanwax[15]>wanwax[16]) lunation[15]=1; else lunation[15]=lunation[16]+28/29.530589;
if(wanwax[14]>wanwax[15]) lunation[14]=1; else lunation[14]=lunation[15]+28/29.530589;
if(wanwax[13]>wanwax[14]) lunation[13]=1; else lunation[13]=lunation[14]+28/29.530589;
if(wanwax[12]>wanwax[13]) lunation[12]=1; else lunation[12]=lunation[13]+28/29.530589;
if(wanwax[11]>wanwax[12]) lunation[11]=1; else lunation[11]=lunation[12]+28/29.530589;
if(wanwax[10]>wanwax[11]) lunation[10]=1; else lunation[10]=lunation[11]+28/29.530589;
if(wanwax[9]>wanwax[10]) lunation[9]=1; else lunation[9]=lunation[10]+28/29.530589;
if(wanwax[8]>wanwax[9]) lunation[8]=1; else lunation[8]=lunation[9]+28/29.530589;
if(wanwax[7]>wanwax[8]) lunation[7]=1; else lunation[7]=lunation[8]+28/29.530589;
if(wanwax[6]>wanwax[7]) lunation[6]=1; else lunation[6]=lunation[7]+28/29.530589;
if(wanwax[5]>wanwax[6]) lunation[5]=1; else lunation[5]=lunation[6]+28/29.530589;
if(wanwax[4]>wanwax[5]) lunation[4]=1; else lunation[4]=lunation[5]+28/29.530589;
if(wanwax[3]>wanwax[4]) lunation[3]=1; else lunation[3]=lunation[4]+28/29.530589;
if(wanwax[2]>wanwax[3]) lunation[2]=1; else lunation[2]=lunation[3]+28/29.530589;
if(wanwax[1]>wanwax[2]) lunation[1]=1; else lunation[1]=lunation[2]+28/29.530589;
if(wanwax[0]>wanwax[1]) lunation[0]=1; else lunation[0]=lunation[1]+28/29.530589;

moon = parseInt(lunation[0])

if(moon==1)moonmsg="the dark moon";
else if(moon==2)moonmsg="the new moon";
else if(moon==3)moonmsg="the new moon";
else if(moon==4)moonmsg="the crescent moon";
else if(moon==5)moonmsg="the crescent moon";
else if(moon==6)moonmsg="the crescent moon";
else if(moon==7)moonmsg="the first-quarter moon";
else if(moon==8)moonmsg="the first-quarter moon";
else if(moon==9)moonmsg="the first-quarter moon";
else if(moon==10)moonmsg="the gibbous moon";
else if(moon==11)moonmsg="the gibbous moon";
else if(moon==12)moonmsg="the gibbous moon";
else if(moon==13)moonmsg="the gibbous moon";
else if(moon==14)moonmsg="the full moon";
else if(moon==15)moonmsg="the full moon";
else if(moon==16)moonmsg="the full moon";
else if(moon==17)moonmsg="the disseminating moon";
else if(moon==18)moonmsg="the disseminating moon"; 
else if(moon==19)moonmsg="the disseminating moon"; 
else if(moon==20)moonmsg="the disseminating moon"; 
else if(moon==21)moonmsg="the disseminating moon"; 
else if(moon==22)moonmsg="the third-quarter moon";
else if(moon==23)moonmsg="the third-quarter moon"; 
else if(moon==24)moonmsg="the third-quarter moon"; 
else if(moon==25)moonmsg="the bulsamic moon"; 
else if(moon==26)moonmsg="the bulsamic moon"; 
else if(moon==27)moonmsg="the bulsamic moon"; 
else moonmsg="the dark moon "; 

vartxt ="javascript:popUpsmall('http://www.almanac.com/moon')"

document.write('<img src="moons/moon' + moon + '.png" hspace=0 vspace=0 height=50 width=50 alt="'+moonmsg+ '" onClick="'+vartxt+'" border=0>');


