var fixd;        
                    
function isGregLeapYear(year) 
{                               
	return year%4 == 0 && year%100 != 0 || year%400 == 0;
}                                        
                                        
function gregToFixed(year, month, day)
{                                    
	var a = Math.floor((year - 1) / 4);
	var b = Math.floor((year - 1) / 100);
	var c = Math.floor((year - 1) / 400);
	var d = Math.floor((367 * month - 362) / 12);
                                       
	if (month <= 2)
		e = 0;    
	else if (month > 2 && isGregLeapYear(year))  
		e = -1; 
	else     
		e = -2;  
                            
	return 1 - 1 + 365 * (year - 1) + a - b + c + d + e + day;
}     
      
function Hijri(year, month, day) 
{                         
	this.year = year;  
	this.month = month;  
	this.day = day;      
	this.toFixed = hijriToFixed;
	this.toString = hijriToString;
}          
         
function hijriToFixed()
{        
	return this.day + Math.ceil(29.5 * (this.month - 1)) + (this.year - 1) * 354 +  
		Math.floor((3 + 11 * this.year) / 30) + 227015 - 1;
}             
                
function hijriToString()
{  
	var months = new Array("Muharam","Safar","Rabi\'ul Awal","Rabiul Akhir","Jamadil Awal","Jamadil Akhir","Rejab","Sya\'ban","Ramadan","Syawal","Dzulka\'edah","Dzulhijjah");
return this.day + " " + months[this.month - 1]+ " " + this.year; 
}                
                 
function fixedToHijri(f)  
{           
var i=new Hijri(1100, 1, 1);
i.year = Math.floor((30 * (f - 227015) + 10646) / 10631);
var i2=new Hijri(i.year, 1, 1);     
var m = Math.ceil((f - 29 - i2.toFixed()) / 29.5) + 1;
i.month = Math.min(m, 12);  
i2.year = i.year;
 	i2.month = i.month;   
 	i2.day = 1;     
i.day = f - i2.toFixed() + 1; 
return i; 
}  
    
var tod=new Date();
var weekday=new Array("Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu");
var monthname=new Array("Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Dis"); 
               
var y = tod.getFullYear();
var m = tod.getMonth();
var d = tod.getDate();
var dow = tod.getDay();
            
document.write(weekday[dow] + " : " + d + " " + monthname[m] + " " + y);
      
m++;    
fixd=gregToFixed(y, m, d);
var h=new Hijri(1421, 11, 28);
h = fixedToHijri(fixd);
document.write(" &nbsp;@ " + h.toString() + "H");

