﻿var fixd;
	function isGregLeapYear(year)
	{
		return year%4 == 0 && year%100 != 0 || year%400 == 0;
	}
	
	function testop(str){
		document.write("###### test ("+str+")#######");
	}
	
	function getDaysPassed(){
		today=new Date();
		var year_passed= new Array("&#1575;&#1604;&#1571;&#1608;&#1604;&#1609;",
									   "&#1575;&#1604;&#1579;&#1575;&#1606;&#1610;&#1577;",
									   "&#1575;&#1604;&#1579;&#1575;&#1604;&#1579;&#1577;",
									   "&#1575;&#1604;&#1585;&#1575;&#1576;&#1593;&#1577;",
									   "&#1575;&#1604;&#1582;&#1575;&#1605;&#1587;&#1577;",
									   "&#1575;&#1604;&#1587;&#1575;&#1583;&#1587;&#1577;",
									   "&#1575;&#1604;&#1587;&#1575;&#1576;&#1593;&#1577;",
									   "&#1575;&#1604;&#1579;&#1575;&#1605;&#1606;&#1577;",
									   "&#1575;&#1604;&#1578;&#1575;&#1587;&#1593;&#1577;",
									   "&#1575;&#1604;&#1593;&#1575;&#1588;&#1585;&#1577;");
		var data_to_return = "";
		var arr_launch_date = launch_date.toString().split("-");
		var l_date = arr_launch_date[0];
		var	l_month = arr_launch_date[1];
			l_month = (l_month -1);
		var	l_year = arr_launch_date[2];		
		var passed_date = new Date(l_year, l_month, l_date) //Month is 0-11 in JavaScript
		//Get 1 day in milliseconds
		var one_day=1000*60*60*24;
		var passing_year = 0;
		//Calculate difference btw the two dates, and convert to days
		var days_count = Math.ceil((today.getTime()-passed_date.getTime())/(one_day));
		
			//days_count = 365; // Only to test day Effects
		
		passing_year = Math.floor(days_count/365);

		var final_days = 0;
		if(passing_year > 0){
				final_days = Math.ceil((days_count)%(365));
				if(((days_count)%(365)) == 0){
					data_to_return = "&#1575;&#1604;&#1587;&#1606;&#1577; " + year_passed[passing_year];									
				}else{
					data_to_return = "&#1575;&#1604;&#1587;&#1606;&#1577; " + year_passed[passing_year] + "&#1548; &#1575;&#1604;&#1610;&#1608;&#1605; " +final_days;					
					}
			}else{
					final_days = days_count;
					data_to_return = "&#1575;&#1604;&#1587;&#1606;&#1577; " + year_passed[passing_year] + "&#1548; &#1575;&#1604;&#1610;&#1608;&#1605; " +final_days;					
				}		

	return data_to_return;


//Calculate difference btw the two dates, and convert to days
//document.write(Math.ceil((christmas.getTime()-today.getTime())/(one_day))+ " days left until Christmas!")


			
	}
	
	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('&#1575;&#1604;&#1605;&#1581;&#1585;&#1605;',
   '&#1589;&#1601;&#1585;',
   '&#1585;&#1576;&#1610;&#1593; &#1575;&#1604;&#1571;&#1608;&#1604;',
   '&#1585;&#1576;&#1610;&#1593; &#1575;&#1604;&#1579;&#1575;&#1606;&#1610;',
   '&#1580;&#1605;&#1575;&#1583;&#1609; &#1575;&#1604;&#1571;&#1608;&#1604;',
   '&#1580;&#1605;&#1575;&#1583;&#1609; &#1575;&#1604;&#1579;&#1575;&#1606;&#1610;',
   '&#1585;&#1580;&#1576;',
   '&#1588;&#1593;&#1576;&#1575;&#1606;',
   '&#1585;&#1605;&#1590;&#1575;&#1606;',
   '&#1588;&#1608;&#1575;&#1604;',
   '&#1584;&#1608; &#1575;&#1604;&#1602;&#1593;&#1583;&#1577;',
   '&#1584;&#1608; &#1575;&#1604;&#1581;&#1580;&#1577;');
		
		//("Muharam","Safar","Rabi\'ul Awal","Rabiul Akhir","Jamadil Awal","Jamadil Akhir","Rajab","Sha\'ban","Ramadhan","Shawwal","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;  // default value
	// Modified on 5 september 2006
	// Fix Hijri date by modifying the code below
		i.day = f - i2.toFixed() + 2;
	
	// Modified on December 21 2006
	
	// Fixing Hijri date Ends here
	if(i.day == 31){
		i.day = 1; 
		i.month = i.month + 1;
		}
	
	
   	return i;
	}

	var tod=new Date();
	var weekday=new Array("&#1575;&#1604;&#1571;&#1581;&#1583;","&#1575;&#1604;&#1573;&#1579;&#1606;&#1610;&#1606;","&#1575;&#1604;&#1579;&#1604;&#1575;&#1579;&#1575;&#1569;","&#1575;&#1604;&#1571;&#1585;&#1576;&#1593;&#1575;&#1569;","&#1575;&#1604;&#1582;&#1605;&#1610;&#1587;","&#1575;&#1604;&#1580;&#1605;&#1593;&#1577;","&#1575;&#1604;&#1587;&#1576;&#1578;");
	var monthname=new Array(
	'&#1610;&#1606;&#1575;&#1610;&#1585;',
   '&#1601;&#1576;&#1585;&#1575;&#1610;&#1585;',
   '&#1605;&#1575;&#1585;&#1587;',
   '&#1571;&#1576;&#1585;&#1610;&#1604;',
   '&#1605;&#1575;&#1610;&#1608;',
   '&#1610;&#1608;&#1606;&#1610;&#1607;',
   '&#1610;&#1608;&#1604;&#1610;&#1608;',
   '&#1571;&#1594;&#1587;&#1591;&#1587;',
   '&#1587;&#1576;&#1578;&#1605;&#1576;&#1585;',
   '&#1571;&#1603;&#1578;&#1608;&#1576;&#1585;',
   '&#1606;&#1608;&#1601;&#1605;&#1576;&#1585;',
   '&#1583;&#1610;&#1587;&#1605;&#1576;&#1585;');
	//"January","February","March","April","May","June","July","August","September","October","November","December"

	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(" &#1548; " + h.toString() );
	document.write(" ، " + getDaysPassed() );
	
