function initSearchForm()
{
		//initAutocompleter();
		initAuto();
		
		validateField('input_origin', true, true);
		validateField('input_destination', true, true);
		 
		
		if ($("#directOnlyHidden").val() == "2") $("#directOnly").check();
		$("#directOnly").click(function(){
			var isChecked = $(this)[0].checked;
			if(isChecked) $("#directOnlyHidden").val("2");
			else 	 $("#directOnlyHidden").val("0");
			
		});
		var $d;
		var $rt;
		
		$("select#tripType").change(
			function(){
				$d = $("div#flightsearch_calendar_right");
				$rt = $("#flightsearch_returntime");
				if( $(this).val() == 'OW' )
				{
					//$d = $("div#flightsearch_calendar_right"); 
					$d.hide(500); 
					$rt.hide(); 
				}
				else
				{
					$d.show();
					$rt.show(); 
				}
			}
		);

		var lang = readCookie("mx_lang");
		var localizeCal;
		if(lang == 'en')
		{
			localizeCal = function(cal)
		   {
				cal.cfg.setProperty("START_WEEKDAY", 1);
				cal.cfg.setProperty("DATE_FIELD_DELIMITER", ".");
				cal.cfg.setProperty("MDY_DAY_POSITION", 1);
				cal.cfg.setProperty("MDY_MONTH_POSITION", 2);
				cal.cfg.setProperty("MDY_YEAR_POSITION", 3);
				cal.cfg.setProperty("MD_DAY_POSITION", 1);
				cal.cfg.setProperty("MD_MONTH_POSITION", 2);				
			}
		}
		else if(lang == 'pl')
		{
			localizeCal = function(cal)
		   {
				cal.cfg.setProperty("START_WEEKDAY", 1);
				cal.cfg.setProperty("DATE_FIELD_DELIMITER", ".");
				cal.cfg.setProperty("MDY_DAY_POSITION", 1);
				cal.cfg.setProperty("MDY_MONTH_POSITION", 2);
				cal.cfg.setProperty("MDY_YEAR_POSITION", 3);
				cal.cfg.setProperty("MD_DAY_POSITION", 1);
				cal.cfg.setProperty("MD_MONTH_POSITION", 2);	
				cal.cfg.setProperty("MONTHS_SHORT",   ["Sty", "Lut", "Mar", "Kwi", "Maj", "Cze", "Lip", "Sie", "Wrz", "Paź", "Lis", "Gru"]);
				cal.cfg.setProperty("MONTHS_LONG",    ["Styczeń", "Luty", "Marzec", "Kwiecień", "Maj", "Czerwiec", "Lipiec", "Sierpień", "Wrzesień", "Październik", "Listopad", "Grudzień"]);
				cal.cfg.setProperty("WEEKDAYS_1CHAR", ["N", "Pn", "Wt", "Śr", "Cz", "Pt", "So" ]);
				cal.cfg.setProperty("WEEKDAYS_SHORT", ["N", "Pn", "Wt", "Śr", "Cz", "Pt","So"]);
				cal.cfg.setProperty("WEEKDAYS_MEDIUM",["Nie", "Pon", "Wto", "Śro", "Czw", "Pią","Sob"]);
				cal.cfg.setProperty("WEEKDAYS_LONG",  ["Niedziela", "Poniedziałek", "Wtorek", "Środa", "Czwartek", "Piątek", "Sobota"]);
			   
				
//				Calendar._DN = new Array
//				("Niedziela", "Poniedziałek", "Wtorek", "Środa", "Czwartek", "Piątek", "Sobota");
//
//				Calendar._SDN = new Array
//				("N", "Pn", "Wt", "Śr", "Cz", "Pt", "So", "N");
//
//				Calendar._MN = new Array
//				("Styczeń", "Luty", "Marzec", "Kwiecień", "Maj", "Czerwiec", "Lipiec", "Sierpień", "Wrzesień", "Październik", "Listopad", "Grudzień");
//
//				Calendar._SMN = new Array
//				("Sty", "Lut", "Mar", "Kwi", "Maj", "Cze", "Lip", "Sie", "Wrz", "Paź", "Lis", "Gru");
			}
		}
		else
		{
			localizeCal = function(cal)
		   {
				cal.cfg.setProperty("START_WEEKDAY", 1);
				cal.cfg.setProperty("DATE_FIELD_DELIMITER", ".");
				cal.cfg.setProperty("MDY_DAY_POSITION", 1);
				cal.cfg.setProperty("MDY_MONTH_POSITION", 2);
				cal.cfg.setProperty("MDY_YEAR_POSITION", 3);
				cal.cfg.setProperty("MD_DAY_POSITION", 1);
				cal.cfg.setProperty("MD_MONTH_POSITION", 2);
				cal.cfg.setProperty("MONTHS_SHORT",   ["Jan", "Feb", "M\u00E4r", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"]);
				cal.cfg.setProperty("MONTHS_LONG",    ["Januar", "Februar", "M\u00E4rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"]);
				cal.cfg.setProperty("WEEKDAYS_1CHAR", ["S", "M", "D", "M", "D", "F", "S"]);
				cal.cfg.setProperty("WEEKDAYS_SHORT", ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"]);
				cal.cfg.setProperty("WEEKDAYS_MEDIUM",["Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam"]);
				cal.cfg.setProperty("WEEKDAYS_LONG",  ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"]);
			   
		   } 
		} 
		
		
		
	   var $dDay = $("#departureDay");
	   var $dMonthYear = $("#departureMonthYear");
	   var $rDay = $("#returnDay");
		var $rMonthYear = $("#returnMonthYear");
		var $startDateView = $("div#startDateView");
		var $returnDateView = $("div#returnDateView");
		
		var dd = $dMonthYear.val().split('-')[0] + "/" + $dDay.val() + "/" + $dMonthYear.val().split('-')[1];
		var rd = $rMonthYear.val().split('-')[0] + "/" + $rDay.val() + "/" + $rMonthYear.val().split('-')[1];	
		var rdv = $rDay.val() + "." + $rMonthYear.val().split('-')[0] + "." + $rMonthYear.val().split('-')[1];
		var ddv = $dDay.val() + "." + $dMonthYear.val().split('-')[0] + "." + $dMonthYear.val().split('-')[1];
		
		if(lang == "en")
		{
			$startDateView.text(dd);
			$returnDateView.text(rd);
		}
		else
		{
			$startDateView.text(ddv);
			$returnDateView.text(rdv); 
		}
		

		
	   var maxDate = YAHOO.widget.DateMath.add(new Date(),YAHOO.widget.DateMath.DAY, 330);
		
	   var start; 
	   start = new YAHOO.widget.Calendar("start","startDate");
	   start.cfg.setProperty( "mindate" ,new Date() );
	   start.cfg.setProperty( "maxdate", maxDate );
	   start.cfg.setProperty( "selected", dd );
	   start.cfg.setProperty( "pagedate", $dMonthYear.val().replace(/-/,"/") );
	   localizeCal(start);
	    
		
	   var end; 
	   end = new YAHOO.widget.Calendar("end","returnDate"); 
	   end.cfg.setProperty( "mindate" ,dd );
	   end.cfg.setProperty( "maxdate",  maxDate);
	   end.cfg.setProperty( "selected", rd);
	   end.cfg.setProperty( "pagedate", $rMonthYear.val().replace(/-/,"/") );
	   localizeCal(end);
	   
	   start.render();
	   end.render(); 	
	   

					   
		var startSelectHandler = function(type,args,obj) { 
	    	var selected = args[0];
	    	var dates = args[0]; 
	    	var date = dates[0]; 
	    	var year = date[0], month = date[1], day = date[2]; 	    	
	    	var s_date = this._toDate(selected[0]);
			end.cfg.setProperty( "mindate" ,s_date );
			
			if(end.getSelectedDates()[0] != null && end.getSelectedDates()[0].getTime() < s_date.getTime() ) end.select(s_date);
			if (end.cfg.getProperty("pagedate") < start.cfg.getProperty("pagedate"))
			{
				end.cfg.setProperty("pagedate", start.cfg.getProperty("pagedate"));
			}
			end.render(); 
			var xd = s_date.getDate();
			if (xd < 10 ) xd = "0" + xd;
			$dDay.val(xd);
			if(month < 10) month = "0"+month;
			$dMonthYear.val(month + "-" + s_date.getFullYear());
			if(lang == 'en') $startDateView.text( month + "/" + day + "/" + year);
			else	$startDateView.text( day + "." + month + "." + year);	
		}; 	   
		
		var endSelectHandler = function(type,args,obj) { 
	    	var selected = args[0];
	    	var dates = args[0]; 
	    	var date = dates[0]; 
	    	var year = date[0], month = date[1], day = date[2]; 	    	
	    	var s_date = this._toDate(selected[0]);
			if (end.cfg.getProperty("pagedate") < start.cfg.getProperty("pagedate"))
			{
				start.cfg.setProperty("pagedate", end.cfg.getProperty("pagedate"));
				start.render(); 
			}
			var xd = s_date.getDate();
			if (xd < 10 ) xd = "0" + xd;
			$rDay.val(xd);
			if(month < 10) month = "0"+month;
			$rMonthYear.val(month + "-" + s_date.getFullYear());
			if(lang == 'en') $returnDateView.text( month + "/" + day + "/" + year);
			else $returnDateView.text( day + "." + month + "." + year);		 
		}; 	  

		var startPageHandler = function() { 
			if (end.cfg.getProperty("pagedate") < start.cfg.getProperty("pagedate"))
			{
				end.cfg.setProperty("pagedate", start.cfg.getProperty("pagedate"));
				end.render(); 
			}
		}; 	   
		
		var endPageHandler = function() { 
			if (end.cfg.getProperty("pagedate") < start.cfg.getProperty("pagedate"))
			{
				start.cfg.setProperty("pagedate", end.cfg.getProperty("pagedate"));
				start.render(); 
			} 
		};
		 
	   start.selectEvent.subscribe(startSelectHandler, start, true); 
	   end.selectEvent.subscribe(endSelectHandler, end, true); 
	   
	   start.changePageEvent.subscribe(startPageHandler,start);
	   end.changePageEvent.subscribe(endPageHandler,end);
	   
	   $("table.yui-calendar").removeAttr("cellspacing");
	   
	   $("#searchForm").keypress(function (e) {  
         if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {  
             $("#submitbutton").click();  
             return false;  
         } else {  
             return true;  
         }  
     });   
	   	
}


 
     


function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}



