var riprova="Perche non fungi?";
var guardami="Se mi leggi sto funzionando";

function intPart(floatNum){
if (floatNum< -0.0000001){
	 return Math.ceil(floatNum-0.0000001)
	}
return Math.floor(floatNum+0.0000001)	
}
function ChrMonth(arg){
	switch(arg){
		case 1: return("Gennaio");break;
		case 2: return("Febbraio");break;
		case 3: return("Marzo");break;
		case 4: return("Aprile");break;
		case 5: return("Maggio");break;
		case 6: return("Giugno");break;
		case 7: return("Luglio");break;
		case 8: return("Agosto");break;
		case 9: return("Settembre");break;
		case 10: return("Ottobre");break;
		case 11: return("Novembre");break;
		case 12: return("Dicembre");break;
	}
}
function HigMonth(prova){
	switch(prova){
		case 1: return("Muharram");break;
		case 2: return("Safar");break;
		case 3: return("Rab&icirc; Al-Awwal");break;
		case 4: return("Rab&icirc; Ath-Th&acirc;n&icirc;");break;
		case 5: return("Jum&acirc;da Al-Awwal");break;
		case 6: return("Jum&acirc;da Ath-Th&acirc;n&icirc;");break;
		case 7: return("Rajab");break;
		case 8: return("Cha`b&acirc;n");break;
		case 9: return("Ramadan");break;
		case 10: return("Chaww&acirc;l");break;
		case 11: return("Dhul-Qa`da");break;
		case 12: return("Dhul-hijja");break;
	}
}
function weekDay(wdn){
					if(wdn==0){
						return "Luned&igrave;"
						}
					if(wdn==1){
						return "Marted&igrave;"
						}
					if(wdn==2){
						return "Mercoled&igrave;"
						}
					if(wdn==3){
						return "Gioved&igrave;"
						}
					if(wdn==4){
						return "Venerd&igrave;"
						}
					if(wdn==5){
						return "Sabato"
						}
					if(wdn==6){
						return "Domenica"
						}
	return ""

}
function ChrMonthArab(arg){
	switch(arg){
		case 1: return("<b>يناير</b>");break;
		case 2: return("<b>فبراير</b>");break;
		case 3: return("<b>مارس</b>");break;
		case 4: return("<b>إبريل</b>");break;
		case 5: return("<b>مايو</b>");break;
		case 6: return("<b>يونيو</b>");break;
		case 7: return("<b>يوليو</b>");break;
		case 8: return("<b>أغسطس</b>");break;
		case 9: return("<b>سبتمبر</b>");break;
		case 10: return("<b>أكتوبر</b>");break;
		case 11: return("<b>نوفمبر</b>");break;
		case 12: return("<b>ديسمبر</b>");break;
	}
}
function HigMonthArab(prova){
	switch(prova){
		case 1: return("<b>المحرم</b>");break;
		case 2: return("<b>صفر</b>");break;
		case 3: return("<b>ربيع الأول</b>");break;
		case 4: return("<b>ربيع الآخر</b>");break;
		case 5: return("<b>جمادى الأولى</b>");break;
		case 6: return("<b>جمادى الآخرة</b>");break;
		case 7: return("<b>رجب</b>");break;
		case 8: return("<b>شعبان</b>");break;
		case 9: return("<b>رمضان</b>");break;
		case 10: return("<b>شوال</b>");break;
		case 11: return("<b>ذو القعدة</b>");break;
		case 12: return("<b>ذو الحجة</b>");break;
	}
}
function weekDayArab(wdn){
					if(wdn==0){
						return "<b>الإثنين</b>"
						}
					if(wdn==1){
						return "<b>الثلاثاء</b>"
						}
					if(wdn==2){
						return "<b>الأربعاء</b>"
						}
					if(wdn==3){
						return "<b>الخميس</b>"
						}
					if(wdn==4){
						return "<b>الجمعة</b>"
						}
					if(wdn==5){
						return "<b>السبت</b>"
						}
					if(wdn==6){
						return "<b>الأحد</b>"
						}
	return ""

}
function JDay(dn,mn,yn){
	d=parseInt(dn);
	m=parseInt(mn);
	y=parseInt(yn);
	if ((y>1582)||((y==1582)&&(m>10))||((y==1582)&&(m==10)&&(d>14))) {
		jd=intPart((1461*(y+4800+intPart((m-14)/12)))/4)+intPart((367*(m-2-12*(intPart((m-14)/12))))/12)-intPart( (3* (intPart(  (y+4900+    intPart( (m-14)/12)     )/100)    )   ) /4)+d-32075
	}
	else{
		jd = 367*y-intPart((7*(y+5001+intPart((m-9)/7)))/4)+intPart((275*m)/9)+d+1729777
	}
}

function chrToIsl(arg) {
	d=parseInt(arg.CDay.value)
	m=parseInt(arg.CMonth.value)
	y=parseInt(arg.CYear.value)
					if ((y>1582)||((y==1582)&&(m>10))||((y==1582)&&(m==10)&&(d>14))) 
						{
						jd=intPart((1461*(y+4800+intPart((m-14)/12)))/4)+intPart((367*(m-2-12*(intPart((m-14)/12))))/12)-
	intPart( (3* (intPart(  (y+4900+    intPart( (m-14)/12)     )/100)    )   ) /4)+d-32075
						}
						else
						{
						jd = 367*y-intPart((7*(y+5001+intPart((m-9)/7)))/4)+intPart((275*m)/9)+d+1729777
						}
					arg.JD.value=jd
					arg.wd.value=weekDay(jd%7)
					l=jd-1948440+10632
					n=intPart((l-1)/10631)
					l=l-10631*n+354
					j=(intPart((10985-l)/5316))*(intPart((50*l)/17719))+(intPart(l/5670))*(intPart((43*l)/15238))
					l=l-(intPart((30-j)/15))*(intPart((17719*j)/50))-(intPart(j/16))*(intPart((15238*j)/43))+29
					m=intPart((24*l)/709)
					d=l-intPart((709*m)/24)
					y=30*n+j-30

	sd=arg.CDay.value;
	sm=arg.CMonth.value;
	sy=arg.CYear.value;
	giorno=weekDay(jd%7);
	giornoarab=weekDayArab(jd%7);
	document.forms[0].campoa.value="<center><font face=\"Comic Sans MS\" color=\"#008000\"><h2>Risultato della conversione</h2></font></center><center><p><font face=\"Comic Sans MS\">La data gregoriana: "+giorno+" "+sd+" "+ChrMonth(parseInt(sm))+" "+sy+"</p><p>corrisponde alla data islamica: "+giorno+" "+d+" "+HigMonth(parseInt(m))+" "+y+"</p><hr width='80%'>";
	document.forms[0].campob.value="<center><p><font face=\"Comic Sans MS\" color=\"#008000\"><h1>نتيجة التحويل</h1></font></p><center><p><b>التّاريخ الميلادي: "+giornoarab+" "+sd+" "+ChrMonthArab(parseInt(sm))+" "+sy+"<p>موافق للتّاريخ الهجري: "+giornoarab+" "+d+" "+HigMonthArab(parseInt(m))+" "+y+"</p>";
	finestra=window.open("result.html","nuovafin","width=480,height=335,scrollbars");
	finestra.focus();
}

function ControllaC(nome){
	//This function is copyrighted by Softmasters - www.softmasters.net
	var stato="yes";
	if (nome.CYear.value==""||isNaN(nome.CYear.value)||(nome.CYear.value-Math.round(nome.CYear.value))!=0||nome.CYear.value<622){
		stato="no";
		alert("L'anno deve essere un numero intero maggiore o uguale a 622, data di inizio del calendario Higri");
		nome.CYear.select();
	}
	else{
		if((nome.CMonth.value-Math.round(nome.CMonth.value))!=0||nome.CMonth.value<=0||nome.CMonth.value>12){
			stato="no";
			alert("Il mese deve essere un numero intero compreso tra 1 e 12");
			nome.CMonth.select();
		}
	}
	switch(nome.CMonth.value){
		case "4" :
		case "6" :
		case "9" :
		case "11": if(nome.CDay.value-Math.round(nome.CDay.value)!=0||nome.CDay.value<=0||nome.CDay.value>30){
					stato="no";
					alert("Il giorno del mese deve essere un numero intero compreso tra 1 e 30");
					nome.CDay.select();
				}
				break;
		case "2": if(nome.CDay.value-Math.round(nome.CDay.value)!=0||nome.CDay.value<=0||nome.CDay.value>29){
				stato="no";
				alert("Il giorno del mese deve essere un numero intero compreso tra 1 e 29");
				nome.CDay.select();
			  }
			  break;
		case "1" :
		case "3" :
		case "5" :
		case "7" :
		case "8" :
		case "10":
		case "12": if(nome.CDay.value-Math.round(nome.CDay.value)!=0||nome.CDay.value<=0||nome.CDay.value>31){
				stato="no";
				alert("Il giorno del mese deve essere un numero intero compreso tra 1 e 31");
				nome.CDay.select();
			}
			break;		      
	}
	if (stato=="yes") chrToIsl(nome);
}
	




