function ChangeToEth(Day,Month,Year,Type)
 {
  var Today=new Date(Year,Month-1,Day),ref=new Date(1998,8,11),Base_Date=new Date(1970,0,1)
  var Diff,Block365,LeapYear,Day,Month,Year,YearRset,StrReturn,No_Milliseconds,SMonth
  Diff=parseInt((Today-ref)/(3600*1000*24))+1;
  Block365=parseInt(Diff/365); 
  LeapYear=(Diff % 365)-parseInt((Block365+3)/4);
  Year=1991+Block365;
  if(LeapYear<=0)
    {    
      Year--; 
      YearRset=(Year+1) % 4;
      LeapYear=365+LeapYear+1-parseInt((((YearRset+2)%(YearRset+1))+1)/2)  
    }       
  Day=(LeapYear % 30);
  Day=Day+30*(1-parseInt((((Day+2)%(Day+1))+1)/2));
  Month=parseInt(LeapYear/30)+parseInt((((Day+2)%(Day+1))+1)/2);
  if((LeapYear % 30)==0)
   {
     Month=parseInt(LeapYear/30);
   }
  No_Milliseconds=(Today-Base_Date)-((Day-1)*3600*24*1000);
  var True_Date=new Date(No_Milliseconds);
  if (Type == -1)
  {
	  StrReturn=Year + "|" + Month + "|" + Day +"|"+True_Date.getDay();
	  StrReturn=StrReturn.split("|");
  } // if (Type == -1)
  if (Type == 0) // format day/month/year
  {
	  StrReturn=Day +"/"+Month+"/"+Year;
  } // if (Type == 0)
  if (Type == 1) // format month day year
  {
	  SMonth = EthMonth (Month);
	  StrReturn=SMonth+" " +Day +" "+Year;
  } // if (Type == 0)
  
  return StrReturn;
 } 

function GetDiff(Day,Month,Year)
 {
   var YearDays,Reminant_Days,Leapyear        
   Number_Of_Years=Year-1991; // 23/4/1994;
   Leapyear=parseInt((Number_Of_Years+3)/4); //To adjust to Habesha leapyear add 4 
   YearDays=365*Number_Of_Years+Leapyear;
   Reminant_Days=((Month-1) % 13)*30 + Day;
   Total_Number_Of_Days=Reminant_Days + YearDays;
   return Total_Number_Of_Days;
 }  
function ChangeToGregorian(Day,Month,Year)
 {  
   var Diff,Day,Month,Year,No_Milliseconds,StrReturn
   var Base_Date=new Date(1970,0,1),My_Ref_Date=new Date(1998,8,11),Current_Date 
   Diff=GetDiff(Day,Month,Year);
   No_Milliseconds=(My_Ref_Date-Base_Date)+((Diff-1)*3600*24*1000);
   var Current_Date=new Date(No_Milliseconds);  
   Month=Current_Date.getMonth()+1;
   Day=Current_Date.getDate();
   Year=Current_Date.getFullYear();  
   StrReturn=Year + "|" + Month + "|" + Day ;
   StrReturn=StrReturn.split("|");
   return StrReturn;    
 }

function EthMonth (month)
{
	switch (month) {   
		case 1 :       
			smonth = "Meskerem";       
			break;    
		case 2 :      
			smonth = "Tikimt";        
			break;
		case 3 :      
			smonth = "Hidar";        
			break;
		case 4 :      
			smonth = "Tahissas";        
			break;
		case 5 :      
			smonth = "Tir";        
			break;
		case 6 :      
			smonth = "Yekatit";        
			break;
		case 7 :      
			smonth = "Megabit";        
			break;
		case 8 :      
			smonth = "Miyaziya";        
			break;
		case 9 :      
			smonth = "Ginbot";        
			break;
		case 10 :      
			smonth = "Sene";        
			break;
		case 11 :      
			smonth = "Hamlie";        
			break;
		case 12 :      
			smonth = "Nehassie";        
			break;
		case 13 :      
			smonth = "Pagume";        
			break;
		default :      
			smonth = "Meskerem";
	} // switch (month)
	return smonth;
} // function EthMonth (month)