/* ********** Kullanilan diger classlar ********** */
//---		Controls.js
//---		Date.js
//---		//--Strings.js


/* ********** Genel Degiskenler Baslangic ********** */

//var tempTarih; 		//Tarih islemleri sirasinda gecici olarak kullanmak amaciyla konulan degisken
//var HtmlElement;		//Calendar nesnesinin etkilesim icinde bulunacagi Html text control degiskeni
//var HtmlSender;		//Calendar nesnesinin etkilesim icinde bulunacagi Html button,img vs.. control degiskeni
//var Tarih; 			//Calendar nesnesinin yaratildigi zaman tarih degerini tutacak olan degisken
var Sure=1000; 		//Calendar nesnesinin takvimi acildiginda mouse out olayinda kontrol araligi
var KalanSure=2; 		//Calendar nesnesinin takvimi mouse out olayinda kullanilacak olan sure kontrol degiskeni
//var CalendarPanel; 	//Calendar nesnesinin takviminin icinde gosterilecegi div elementi
//var PanelText;			//Calendar nesnesinin takvimin icerigini barindiran text degiskeni
//var TarihBaz; 			//Tarih listeleme yaparken listelemenin baz alinacagi tarih degerini saklamak icin kullanilir.
//var PanelLeft=0;		//Takvim acildiginda takvimin soldan kalack olan degerini verir.
//var PanelTop=0;		//Takvim acildiginda takvimin ustten kalacak degerini verir
var PanelLeftEx=10;		//Takvim acildiginda takvimin soldan kalacak degerine ekstra deger ekler
var PanelTopEx=-50;		//Takvim acildiginda takvimin ustten kalacak degerine ekstra deger ekler
var PanelWidth=200;	//Takvim acildiginda takvimin default genisligini tutacak degisken
var Zamanlayici=null;		//Takvimin zaman kontrolunu saglayan timer
///Daha sonradan eklenen kodlar icerik modulu icin
var X=0;//Mouse bagimli gecici x degeri
var Y=0;//mouse bagimli gecici  degeri
var CalOpen = false;
///

var Aylar = new Array("tr","eng","ara","cin","de","esp","fra","ita","jpn","rus");	 	//Kullanilacak olan ay degerleri icin
var Gunler = new Array("tr","eng","ara","cin","de","esp","fra","ita","jpn","rus");		//Kullanilacak olan gun degerleri icin
Gunler["tr"] = new Array(
	[ "Pazartesi"	, "P" 	],//Uzun ve kisa halleri
	[ "Sali"		, "S" 	],
	[ "carsamba"	, "c" 	],
	[ "Persembe"	, "P" 	],
	[ "Cuma"		, "C" 	],
	[ "Cumartesi"	, "C" 	],
	[ "Pazar"		, "P" 	]
);//Gunler
Aylar["tr"] = new Array(
	[ "Ocak"		, "Ock" 	],//Uzun ve kisa halleri
	[ "subat"		, "sbt" 	],
	[ "Mart"		, "Mrt" 	],
	[ "Nisan"		, "Nis" 	],
	[ "Mayis"		, "May" 	],
	[ "Haziran"	, "Haz" 	],
	[ "Temmuz"		, "Tem" 	],
	[ "Agustos"	, "Agu" 	],
	[ "Eylul"		, "Eyl" 	],
	[ "Ekim"		, "Ekm" 	],
	[ "Kasim"		, "Ksm" 	],
	[ "Aralik"		, "Ara" 	]
);//Aylar
Gunler["eng"] = new Array(
	[ "Monday"		, "M" 	],//Uzun ve kisa halleri
	[ "Tuesday"	, "S" 	],
	[ "Wednesday"	, "W" 	],
	[ "Thursday"	, "T" 	],
	[ "Friday"		, "F" 	],
	[ "Saturday"	, "S" 	],
	[ "SUnday"		, "S" 	]
);//Gunler
Aylar["eng"] = new Array(
	[ "January"	, "Jan" 	],//Uzun ve kisa halleri
	[ "February"	, "Feb" 	],
	[ "March"		, "Mar" 	],
	[ "April"		, "Apr" 	],
	[ "May"			, "May" 	],
	[ "June"		, "Jun" 	],
	[ "July"		, "Jul" 	],
	[ "August"		, "Aug" 	],
	[ "September"	, "Sep" 	],
	[ "October"	, "Oct" 	],
	[ "November"	, "Nov" 	],
	[ "December"	, "Dec" 	]
);//Aylar
Gunler["ara"] = new Array(
	[ "Monday"		, "M" 	],//Uzun ve kisa halleri
	[ "Tuesday"	, "S" 	],
	[ "Wednesday"	, "W" 	],
	[ "Thursday"	, "T" 	],
	[ "Friday"		, "F" 	],
	[ "Saturday"	, "S" 	],
	[ "SUnday"		, "S" 	]
);//Gunler
Aylar["ara"] = new Array(
	[ "January"	, "Jan" 	],//Uzun ve kisa halleri
	[ "February"	, "Feb" 	],
	[ "March"		, "Mar" 	],
	[ "April"		, "Apr" 	],
	[ "May"			, "May" 	],
	[ "June"		, "Jun" 	],
	[ "July"		, "Jul" 	],
	[ "August"		, "Aug" 	],
	[ "September"	, "Sep" 	],
	[ "October"	, "Oct" 	],
	[ "November"	, "Nov" 	],
	[ "December"	, "Dec" 	]
);//Aylar
Gunler["cin"] = new Array(
	[ "Monday"		, "M" 	],//Uzun ve kisa halleri
	[ "Tuesday"	, "S" 	],
	[ "Wednesday"	, "W" 	],
	[ "Thursday"	, "T" 	],
	[ "Friday"		, "F" 	],
	[ "Saturday"	, "S" 	],
	[ "SUnday"		, "S" 	]
);//Gunler
Aylar["cin"] = new Array(
	[ "January"	, "Jan" 	],//Uzun ve kisa halleri
	[ "February"	, "Feb" 	],
	[ "March"		, "Mar" 	],
	[ "April"		, "Apr" 	],
	[ "May"			, "May" 	],
	[ "June"		, "Jun" 	],
	[ "July"		, "Jul" 	],
	[ "August"		, "Aug" 	],
	[ "September"	, "Sep" 	],
	[ "October"	, "Oct" 	],
	[ "November"	, "Nov" 	],
	[ "December"	, "Dec" 	]
);//Aylar
Gunler["de"] = new Array(
	[ "Monday"		, "M" 	],//Uzun ve kisa halleri
	[ "Tuesday"	, "S" 	],
	[ "Wednesday"	, "W" 	],
	[ "Thursday"	, "T" 	],
	[ "Friday"		, "F" 	],
	[ "Saturday"	, "S" 	],
	[ "SUnday"		, "S" 	]
);//Gunler
Aylar["de"] = new Array(
	[ "January"	, "Jan" 	],//Uzun ve kisa halleri
	[ "February"	, "Feb" 	],
	[ "March"		, "Mar" 	],
	[ "April"		, "Apr" 	],
	[ "May"			, "May" 	],
	[ "June"		, "Jun" 	],
	[ "July"		, "Jul" 	],
	[ "August"		, "Aug" 	],
	[ "September"	, "Sep" 	],
	[ "October"	, "Oct" 	],
	[ "November"	, "Nov" 	],
	[ "December"	, "Dec" 	]
);//Aylar
Gunler["esp"] = new Array(
	[ "Monday"		, "M" 	],//Uzun ve kisa halleri
	[ "Tuesday"	, "S" 	],
	[ "Wednesday"	, "W" 	],
	[ "Thursday"	, "T" 	],
	[ "Friday"		, "F" 	],
	[ "Saturday"	, "S" 	],
	[ "SUnday"		, "S" 	]
);//Gunler
Aylar["esp"] = new Array(
	[ "January"	, "Jan" 	],//Uzun ve kisa halleri
	[ "February"	, "Feb" 	],
	[ "March"		, "Mar" 	],
	[ "April"		, "Apr" 	],
	[ "May"			, "May" 	],
	[ "June"		, "Jun" 	],
	[ "July"		, "Jul" 	],
	[ "August"		, "Aug" 	],
	[ "September"	, "Sep" 	],
	[ "October"	, "Oct" 	],
	[ "November"	, "Nov" 	],
	[ "December"	, "Dec" 	]
);//Aylar
Gunler["fra"] = new Array(
	[ "Monday"		, "M" 	],//Uzun ve kisa halleri
	[ "Tuesday"	, "S" 	],
	[ "Wednesday"	, "W" 	],
	[ "Thursday"	, "T" 	],
	[ "Friday"		, "F" 	],
	[ "Saturday"	, "S" 	],
	[ "SUnday"		, "S" 	]
);//Gunler
Aylar["fra"] = new Array(
	[ "January"	, "Jan" 	],//Uzun ve kisa halleri
	[ "February"	, "Feb" 	],
	[ "March"		, "Mar" 	],
	[ "April"		, "Apr" 	],
	[ "May"			, "May" 	],
	[ "June"		, "Jun" 	],
	[ "July"		, "Jul" 	],
	[ "August"		, "Aug" 	],
	[ "September"	, "Sep" 	],
	[ "October"	, "Oct" 	],
	[ "November"	, "Nov" 	],
	[ "December"	, "Dec" 	]
);//Aylar
Gunler["ita"] = new Array(
	[ "Monday"		, "M" 	],//Uzun ve kisa halleri
	[ "Tuesday"	, "S" 	],
	[ "Wednesday"	, "W" 	],
	[ "Thursday"	, "T" 	],
	[ "Friday"		, "F" 	],
	[ "Saturday"	, "S" 	],
	[ "SUnday"		, "S" 	]
);//Gunler
Aylar["ita"] = new Array(
	[ "January"	, "Jan" 	],//Uzun ve kisa halleri
	[ "February"	, "Feb" 	],
	[ "March"		, "Mar" 	],
	[ "April"		, "Apr" 	],
	[ "May"			, "May" 	],
	[ "June"		, "Jun" 	],
	[ "July"		, "Jul" 	],
	[ "August"		, "Aug" 	],
	[ "September"	, "Sep" 	],
	[ "October"	, "Oct" 	],
	[ "November"	, "Nov" 	],
	[ "December"	, "Dec" 	]
);//Aylar
Gunler["jpn"] = new Array(
	[ "Monday"		, "M" 	],//Uzun ve kisa halleri
	[ "Tuesday"	, "S" 	],
	[ "Wednesday"	, "W" 	],
	[ "Thursday"	, "T" 	],
	[ "Friday"		, "F" 	],
	[ "Saturday"	, "S" 	],
	[ "SUnday"		, "S" 	]
);//Gunler
Aylar["jpn"] = new Array(
	[ "January"	, "Jan" 	],//Uzun ve kisa halleri
	[ "February"	, "Feb" 	],
	[ "March"		, "Mar" 	],
	[ "April"		, "Apr" 	],
	[ "May"			, "May" 	],
	[ "June"		, "Jun" 	],
	[ "July"		, "Jul" 	],
	[ "August"		, "Aug" 	],
	[ "September"	, "Sep" 	],
	[ "October"	, "Oct" 	],
	[ "November"	, "Nov" 	],
	[ "December"	, "Dec" 	]
);//Aylar
Gunler["rus"] = new Array(
	[ "Monday"		, "M" 	],//Uzun ve kisa halleri
	[ "Tuesday"	, "S" 	],
	[ "Wednesday"	, "W" 	],
	[ "Thursday"	, "T" 	],
	[ "Friday"		, "F" 	],
	[ "Saturday"	, "S" 	],
	[ "SUnday"		, "S" 	]
);//Gunler
Aylar["rus"] = new Array(
	[ "January"	, "Jan" 	],//Uzun ve kisa halleri
	[ "February"	, "Feb" 	],
	[ "March"		, "Mar" 	],
	[ "April"		, "Apr" 	],
	[ "May"			, "May" 	],
	[ "June"		, "Jun" 	],
	[ "July"		, "Jul" 	],
	[ "August"		, "Aug" 	],
	[ "September"	, "Sep" 	],
	[ "October"	, "Oct" 	],
	[ "November"	, "Nov" 	],
	[ "December"	, "Dec" 	]
);//Aylar
/* ********** Genel Degiskenler Bitis ********** */






/* ********** Calendar Fonksiyonu Baslagic ********** */

//   Tarih secmek icin kullanilacak olan Calendar nesnesinin constructer'i
//   Element degiskeni value degerinden tarih alinacak 
// 		veya value degerine tarih atanacak olan HTML elementidir.
//   Eger bu element gonderilmemisse Calendar constructer'i islem gerceklestirmez ve uyari verir
//   Element var fakat element icinde herhangi bir deger yoksa veya deger yalnissa o anki sistem tarihi baz olarak alinir.


		function Calendar( _id, _HtmlElement, _HtmlSender, _Dil, _CalendarPanel )
		{
			try
			{
				if (!_id)
					return ShowError ( 'Lutfen id giriniz...' );
				this.id = _id;
				if ( !_HtmlElement ) 
					return ShowError ( 'Element belirlemelisiniz...' );
					
				if ( !_HtmlSender ) 
					return ShowError ( 'Sender belirlemelisiniz...' );

				this.CalendarPanel = getElement( (_CalendarPanel)?_CalendarPanel:'CalendarPanel' );
				if ( !this.CalendarPanel )
					return ShowError( "Lutfen sayfaya CalendarPanel ekleyiniz..." );
				
				//Degiskenler
				this.TarihBaz;
				this.PanelText;
				this.tempTarih;
				this.Dil = _Dil;

				//Kulanilacak olan html elementlerin ayarlanmalari
				this.HtmlElement = _HtmlElement;
				this.HtmlSender = _HtmlSender;
				
				//CalendarPanel'in gorunmez olmasini saglamak
				this.CalendarPanel.style.visibility = "hidden";
				document.onmouseup = function (e)
				{
					try
					{
						if (CalOpen==true)
						{
							e=(e)?e:window.event;
							var	tempE = (IsIE())?e.srcElement:e.target;
							while (tempE != null && tempE.id=="")
								tempE = tempE.offsetParent;
							if (tempE==null || tempE.id != "calendar")
							{
								getElement( 'CalendarPanel' ).style.visibility = "hidden";
								CalOpen = false;
							}
						}
					}
					catch(Hata)
					{
						return ShowError(Hata.description);
					}
				}
				/* ********** ShowCalendar Fonksiyonu Baslangic ********** */

				//   Calendar nesnesinin Takvim olarak gosterilmesi icin   
				//   Belirtilen tipe gore gosterim islemi yapar

					this.ShowCalendar = function ( Tip, getFromElement )
					{
						if ( getFromElement==true )
							this.getDateFromElement();
						switch ( Tip )						{
							case 'm':
								this.ShowForMonth();
							break;
							case 'y':
								this.ShowForYear();
							break;
							default://case 'g':								this.ShowForDay();							break;						}
						OverCalendar();
					}

				/* ********** ShowCalendar Fonksiyonu Bitis ********** */
				
				/* ********** getDateFromElement Fonksiyonu Baslangic ********** */

				//   Calendar nesnesi ile calisacak olan elementin icerigindeki degeri almak icin


				this.getDateFromElement = function ( )
				{
					this.Tarih = IsDateT( this.HtmlElement.value );
					this.Tarih   = ( !this.Tarih )?new Date():this.Tarih;
					this.TarihBaz = this.Tarih;
					this.HtmlElement.value = returnDate(this.Tarih);
				}


				/* ********** getDateFromElement Fonksiyonu Bitis ********** */
				
				/* ********** SetCalendarPanel Fonksiyonu Baslangic ********** */

				//    CalendarPanel'in icerigini ve durumunu ayarlamak icin   

				this.SetCalendarPanel = function ( Text, Show )
				{
					//this.CalendarPanel = getElement( 'CalendarPanel' );
					//Acilacak takvimin pozisyonunu ayarlamak
					this.PanelLeft =this.HtmlSender.offsetLeft+ this.HtmlSender.offsetWidth;
					this.PanelTop = this.HtmlSender.offsetTop;
					this.HtmlParent = this.HtmlSender.offsetParent
					while (this.HtmlParent != null)
					{
						this.PanelLeft += this.HtmlParent.offsetLeft;
						this.PanelTop  += this.HtmlParent.offsetTop;
						this.HtmlParent = this.HtmlParent.offsetParent;
					}
					this.CalendarPanel.innerHTML = Text;
					with( this.CalendarPanel.style )
					{
						width 	= ( Show )?PanelWidth + "px":"2px";
						left  	= ( (( Show )?this.PanelLeft:-3))+"px";
						//top		= ( (( Show )?(IsIE()?PanelTopEx:0) + this.PanelTop:-3))+"px";
						top     =  (( Show )?this.PanelTop:0) + "px";
						visibility = ( Show )?"visible":"hidden";
						CalOpen = Show;
					}
				}
		
				/* ********** SetCalendarPanel Fonksiyonu Bitis ********** */

				this.ShowForDay = ShowCalendarForDay;
				this.ShowForMonth = ShowCalendarForMonth;
				this.ShowForYear = ShowCalendarForYear;
				/* ********** SetElementDate Fonksiyonu Baslangic ********** */

				//    CalendarPanel'in icerigini ve durumunu ayarlamak icin   


				this.SetElementDate = function ( DateValue )
				{
					this.HtmlElement.value = DateValue;
					this.SetCalendarPanel( "", false );
					OverCalendar();
				}
		
				/* ********** SetElementDate Fonksiyonu Baslangic ********** */
				/* ********** KalanSureKontrol Fonksiyonu Baslangic ********** */

				//   Takvim ekrani goruntulenmesinden sonra kapama kontrolu   


				this.KalanSureKontrol = function()
				{
					this.SetCalendarPanel( "", false );
					OverCalendar();
				}


				/* ********** KalanSureKontrol Fonksiyonu Bitis ********** */
				/* ********** NavMonth Fonksiyonu Baslangic ********** */

				//   Takvim ekranini belirtilen ay kadar eklendikten sonra gosterir


				this.NavMonth = function ( month )
				{
					this.TarihBaz = AddMonth( this.TarihBaz, month );
					this.ShowCalendar('g', false);
				}


				/* ********** NavMonth Fonksiyonu Bitis ********** */
				/* ********** NavYear Fonksiyonu Baslangic ********** */

				//   Takvim ekranini belirtilen ay kadar eklendikten sonra gosterir   


				this.NavYear = function ( year )
				{
					this.TarihBaz = AddYear( this.TarihBaz, year );
					this.ShowCalendar('g',false);
				}


				/* ********** NavYear Fonksiyonu Bitis ********** */

			}
			catch(Hata)
			{
				return ShowError ( Hata.description );
			}
		}


/* ********** Calendar Fonksiyonu Bitis ********** */





/* ********** returnDate Fonksiyonu Baslangic ********** */

//   Calendar nesnesinin Tarih degerini text olarak dondurmek icin   


			function returnDate ( rDate)
			{
				return ( ( rDate.getDate()<10?'0':'' ) + rDate.getDate() +'.'	//Gun
						+ ( (( rDate.getMonth() + 1)<10)?'0':'')					//ondan kucuk degerlerde iki hane yapmak icin
						+ ( rDate.getMonth() + 1)+ '.' 							//Ay ( javascripte ay degeri 0 dan basladigi icin bir fazlasi gonderiliyor )
						+   rDate.getFullYear() );								//Yil
			}


/* ********** returnDate Fonksiyonu Bitis ********** */






/* ********** ShowCalendarForDay Fonksiyonu Baslangic ********** */

//   Calendar nesnesinin gunlar icin Takvim olarak gosterilmesi


		function ShowCalendarForDay (  )
		{
			this.PanelText = "<table id=\"calendar\" cellspacing=\"0\" cellpadding=\"0\" summary=\"Month calendar\" onMouseOver=\"OverCalendar();\" onMouseOut=\"OutCalendar('" + this.id + "');\">\n";
			//Header kismi baslangic
			this.PanelText += "\t<tr ><td colspan='7'>";
			//Ay ve yil tarihleri icin kucuk tablo
			this.PanelText += "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" summary=\"Month calendar\"><tr>";// Tablo/Satir baslangici
			
			this.PanelText += "<td style=\"width:4%;  align:center;\"><a href='javascript:;' onclick='" + this.id + ".NavMonth(-1)'><<</a><td>";//Aylar geri linki
			this.PanelText += "<td style=\"width:45%; align:center;\"><a href=\"javascript:;\" onclick=\"" + this.id + ".ShowCalendar( 'm', false );\">"+Aylar[this.Dil][ this.TarihBaz.getMonth() ][ 0 ] + "</a></td>";//Aylar secenek linki
			this.PanelText += "<td style=\"width:4%;  align:center;\"><a href='javascript:;' onclick='" + this.id + ".NavMonth(1)'>>></a></td>";//Aylar ileri linki
			this.PanelText += "<td style=\"width:4%;  align:center;\">&nbsp;</td>";//Araya bosluk vermek icin
			this.PanelText += "<td style=\"width:4%;  align:center;\"><a href='javascript:;' onclick='" + this.id + ".NavYear(-1)'><<</a></td>"; //Yillar geri linki
			this.PanelText += "<td style=\"width:35%; align:center;\"><a href=\"javascript:;\" onclick=\"" + this.id + ".ShowCalendar( 'y', false );\">" + this.TarihBaz.getFullYear() + "</a></td>";//Yillar secenek linki
			this.PanelText += "<td style=\"width:4%;  align:center;\"><a href='javascript:;' onclick='" + this.id + ".NavYear(1)'>>></a></td>";//Yillar ileri linki

			this.PanelText += "</tr></table>";//Tablo Satir bitisi
			//Ay ve yil tarihleri icin kucuk tablo
			this.PanelText += "</td></tr>\n";
			
			
			//Gun bas harfleri satiri Baslangic
			this.PanelText += "\n\t<tr>";
			for ( i=0; i<Gunler[this.Dil].length; 
					this.PanelText += ((i==0)?"\t\t" : "") + "<td title=\"" + Gunler[this.Dil][ i ][ 0 ] +"\">" + Gunler[this.Dil][ i ][ 1 ] + "</td>" + ((i==Gunler[this.Dil].length-1)?"\n" : "") 
					, i++ );
			this.PanelText += "\t</tr>\n";
			// Gun bas harfleri satiri bitis
			//Header kismi bitis
			this.tempTarih = this.TarihBaz;
			this.tempTarih = AddDate ( this.tempTarih, this.tempTarih.getDate()*(-1) );
			if ( this.tempTarih.getDay()!=1 )
				this.tempTarih = AddDate( this.tempTarih, (this.tempTarih.getDay())*(-1)+1);
			for ( hafta=0 ; hafta<5 || this.tempTarih.getMonth() == this.TarihBaz.getMonth(); hafta++)
			{
				this.PanelText += "\t<tr>\n\t\t";
				for ( gun=0; gun<7; gun++ )
				{
				
						this.PanelText += "<td ";
						if (CompareDates( this.Tarih, this.tempTarih )==0)
							this.PanelText += "class='today'>";
						else if (this.TarihBaz.getMonth() == this.tempTarih.getMonth() )
							this.PanelText += " class='tarih'>";
						else
							this.PanelText += " class='empty'>";
						
						this.PanelText += "<a href='javascript:;' onclick=\"" + this.id + ".SetElementDate('" ;
						this.PanelText += returnDate( this.tempTarih ) + "');\">";
						this.PanelText += this.tempTarih.getDate();
						this.PanelText += "</a></td>";
						this.tempTarih=AddDate(this.tempTarih,1);
				}
				this.PanelText += "\t</tr>\n";
			}
			this.PanelText += "</table>\n";
			this.SetCalendarPanel( this.PanelText, true );
		}


/* ********** ShowCalendarForDay Fonksiyonu Bitis ********** */





/* ********** ShowCalendarForMonth Fonksiyonu Baslangic ********** */

//   Calendar nesnesinin aylar icin Takvim olarak gosterilmesi


		function ShowCalendarForMonth (  )
		{
			this.PanelText = "<table id=\"calendar\" onMouseOver=\"OverCalendar();\" onMouseOut=\"OutCalendar('" + this.id + "');\" onselectstart=\"return false;\" cellspacing=\"0\" cellpadding=\"0\" summary=\"Month calendar\">\n";
			this.PanelText += "\t<tr>";
			this.PanelText += "<td colspan='6'><a href=\"javascript:;\" onclick=\"" + this.id + ".ShowCalendar( 'y', false );\">" + this.TarihBaz.getFullYear() + "</a></td></tr>\n";
			for ( i=0; i<Aylar[this.Dil].length; i++ )
			{
				if (i!=0 && (i%3)==0)
					this.PanelText += "\t</tr>";
				if (i==0)
					this.PanelText +="\n\t<tr>\n" ;
				this.PanelText += "<td class='" + ((i==this.TarihBaz.getMonth())?"today":"gun" );//Aktif ayi secili olarak getirmek icin
				this.PanelText += "' title=\"" + Aylar[this.Dil][ i ][ 0 ] +"\">" ;//Ay alt bilgisi
				this.PanelText += "<a href=\"javascript:;\" onclick=\"" + this.id + ".NavMonth(" + ( i-this.TarihBaz.getMonth())+ ")\">";//Secilecek aya navigasyon linki eklenmesi
				this.PanelText += Aylar[this.Dil][ i ][ 1 ] + "</a>";//Ay yazimi
				this.PanelText += "</td>\n" ;
			}
			this.PanelText += "\t</tr>\n";
			this.PanelText += "</table>\n";
			this.SetCalendarPanel( this.PanelText, true );
		}


/* ********** ShowCalendarForMonth Fonksiyonu Bitis ********** */





/* ********** ShowCalendarForYear Fonksiyonu Baslangic ********** */

//   Calendar nesnesinin yillar icin Takvim olarak gosterilmesi


		function ShowCalendarForYear ( )
		{
			this.PanelText = "<table id=\"calendar\"  cellspacing=\"0\" cellpadding=\"0\" summary=\"Month calendar\" onMouseOver=\"OverCalendar();\" onMouseOut=\"OutCalendar('" + this.id + "');\" onselectstart=\"return false;\">\n";
			this.PanelText += "\t<tr>\n";
			this.PanelText += "<td><a href=\"javascript:;\" onclick=\"" + this.id + ".TarihBaz = AddYear(" + this.id + ".TarihBaz,-24);" + this.id + ".ShowForYear ( );\">«</a></td>";
			this.PanelText += "<td colspan='3'><a href=\"javascript:;\" onclick=\"" + this.id + ".ShowCalendar( 'm', false );\">"+Aylar[this.Dil][ this.TarihBaz.getMonth() ][ 0 ] + "</a></td>";
			this.PanelText += "<td><a href=\"javascript:;\" onclick=\"" + this.id + ".TarihBaz = AddYear(" + this.id + ".TarihBaz,+24);" + this.id + ".ShowForYear ( );\">»</a></td></tr>\n";
			for ( i=this.TarihBaz.getFullYear()-12,j=0; i<=this.TarihBaz.getFullYear()+12; j++,i++ )
			{
				if (j==5)
				{
					this.PanelText += "\t</tr>";
					j=0;
				}
				if (j==0)
					this.PanelText +="\n\t<tr>\n" ;
				this.PanelText += ((j==0)?"\t\t" : "") + "<td class='" + (( i-this.TarihBaz.getFullYear() != 0)?"gun":"today") +"' title=\"" + i +"\">" ;
				this.PanelText += "<a href=\"javascript:;\" onclick=\"" + this.id + ".NavYear(" + ( i-this.TarihBaz.getFullYear())+ ")\">" + i + "</a>";
				this.PanelText += "</td>\n" ;
			}
			this.PanelText += "\t</tr>\n";
			this.PanelText += "</table>\n";
			this.SetCalendarPanel( this.PanelText, true );
		}


/* ********** ShowCalendarForYear Fonksiyonu Bitis ********** */






/* ********** OverCalendar Fonksiyonu Baslangic ********** */

//   Mouse nesnesi Calendar nesnesinin Takvimi uzerinde gezdgi surece 
//		takvim ekraninin goruntulenmesi icin   


		function OverCalendar ()
		{
			if (Zamanlayici)
				clearTimeout( Zamanlayici );
		}


/* ********** OverCalendar Fonksiyonu Bitis ********** */






/* ********** OutCalendar Fonksiyonu Baslangic ********** */

//   Mouse nesnesi Calendar nesnesinin Takvimi uzerinden ayrildignda 
//		surece takvim ekraninin uzun sure goruntulenmemesi icin   


		function OutCalendar (_id)
		{
			Zamanlayici = setTimeout( _id+'.KalanSureKontrol()', KalanSure * Sure );
		}


/* ********** OverCalendar Fonksiyonu Bitis ********** */