
var to_json;
var searchcount = 0;

function __(id)
{
    
    var msg = { };
    
    msg["eng"] =
        {
            "abc" : "english"
            ,"tableinfo1"
             :'You can click on the search results form in which sort by the name field. For example, click on "Fare" button, then the result can be follow the "Fare" sort.'
            ,"tableinfo2"
             :'It also can be sorted according to multiple fields. For example, click on "Arrive" first, then follow the "Arrive" sort, after that as pressing the shift key as clicking on "Total" field. What will be the result?  That is it can first sorted by "Arrive" and then sorted according to "Total", So that it is very convenient for you to find the cheapest flights at that day.'
            ,"tableinfo3"
             :'Last but no less, it’s not suitable in accordance with "Depart" to sort first, and then sorted according to other fields, because "Depart" to sort is accurate to the minute order. Therefore, if you first order according to departure time, and then add a second sort field, it does not make sense. As for within one minute it’s not possible a number of airplanes take-off together.'
        };
    
    msg["chi"] =
        {
            "abc" : "中文"
            ,"is currently not available,Webmaster will fixing this problems.Please try later"
             :"暂时不能使用，网站管理员会尽快收复该错误，请稍后再试。"
            ,"Timeout for "
             :"搜索超时："
            ,".Please try again."
             :" 请稍后再试。"
            ,"unknow the browser.please add to favorite by yourself"
             :"未知浏览器，请自行添加到收藏夹。"
            ,"Air Company"
             :"航空公司"
            ,"From"
             :"出发地"
             ,"From :"
             :"出发地 :"
             ,"To"
             :"目的地"
             ,"Depart date"
             :"出发日期"
             ,"Return date"
             :"回程日期"
             ,"Please select"
             :"请选择..."
            ,"Depart"
             :"起飞时间"
            ,"Arrive"
             :"到达时间"
             ,"Search by"
             :"搜索"
            ,"Fare"
             :"价格"
            ,"Total"
             :"总价"
             ,"Back"
             :"后退"
            ," has some error:"
             :" 有错误："
            ,"tableinfo1"
             :"你可以点击搜索结果中的表格，按字段名称进行排序。例如点击“价格”字段，即可按“价格”的高低进行排序。"
            ,"tableinfo2"
             :'也可以按照多字段排序，例如，先点击“到达时间”,系统自动按照“到达时间”排序，再按着shift键同时点击“总价”字段,即可以先按“到达时间”排序再按照"总价"排序，这样就非常方便找出当日最便宜的航班。'
            ,"tableinfo3"
             :'注意这里不适宜先按照“起飞时间”排序再按照其它字段排序，因为“起飞时间”排序是精确到分钟的排序。因此，如果先按照起飞时间排序，再附加第二个排序字段就没有意义了。因为在同一分钟内很少出现有多架飞机同时起飞的情况。'
            ,"See airport@map"
             :'在地图查看机场'
            ," airport"
             :'机场'
//            ,"To"
 //            :'到'
             ,"Dpart date must before Return date."
             :"出发日期必须先于返回日期。"
        };
       
    if ( undefined != (msg_list = msg[language]) )
    {
        if ( undefined != (msg_str = msg_list[id]) )
        {
            return msg_str;            
        }
    }
    
    return id;    
}

$(document).ready(function() {
  //alert("ok");
    setflyday();
  
    $(".locatedata").tap(to_click);
    $(".querycompany1").tap(query_airline_data);
    $(".querycompany0").tap(notquery_airline_data);
    
    $(".depart_item").tap(function(){
  //$(".depart_item").click(function(){
        //alert($(this).text());
       $('#local-states').text(__('From') + ":" +  $(this).text());
       $('#local-states').attr("loc_value",$(this).attr("loc_value"));
       //$('#arrive_list').html('<ul class="edgetoedge"> <li class="sep">F</li> <li><a href="#" class="goback depart_item">abc, Fred</a></li> <li><a href="#" class="goback depart_item">Flintstone, Pebble</a></li> <li><a href="#" class="goback depart_item">Flintstone, Wilma</a></li> <li class="sep">J</li> <li><a href="#" class="goback depart_item">Jetson, <em>Elroy</em></a></li> <li><a href="#" class="goback depart_item">Jetson, <em>George</em></a></li> <li><a href="#" class="goback depart_item">Jetson, <em>Jane</em></a></li> <li><a href="#" class="goback depart_item">Jetson, <em>Judy</em></a></li> <li class="sep" class="goback depart_item">R</li> <li><a href="#" class="goback depart_item">Rubble, <em>Bambam</em></a></li> <li><a href="#" class="goback depart_item">Rubble, <em>Barney</em></a></li> <li><a href="#" class="goback depart_item">Rubble, <em>Betty</em></a></li> </ul>');
       maketolink_by_server($(this).attr("loc_value"));
      
       //return false;
  });  
    $(".searchbutton").click(search_button_click);
    $("#testbutton").click(function(){   
        //$("#search_button_list").append('<li><a class="searchbutton" href="#" >Search by abc</a></li>');
        //$(".searchbutton").click(search_button_click);
       //$('body').append( '<div id="to_abc"> <div class="toolbar"> <h1>To guangzhou</h1> <a href="#" class="back">Back</a> </div></div>');
       //$('#result').append('<li class="arrow"><a href="#to_abc">To: abc</a></li>');
       //alert($("#fly-date").val());
       alert($("#depart_year").val());
        
        return false;
    });
    $("#return-checkbox").click(function(){
       //alert("abc"+ $(this).attr("checked"));
       if ( $(this).attr("checked") )
       {
            $("#return_li").show();
            $("#return_date_zone").show();
            //$("#return_li").slideDown();
       }
       else
       {
            //$("#return_li").slideUp();
            $("#return_li").hide();
            $("#return_date_zone").hide();
       }
    });
    
    $("#depart_year").change(change_depart_day);
    $("#depart_month").change(change_depart_day);
    $("#depart_date").change(change_depart_day);

    $("#return_year").change(change_return_day);
    $("#return_month").change(change_return_day);
    $("#return_date").change(change_return_day);
    
    $(".zone_click").click(function(){
        $(this).next().slideToggle();
    });
    
    load_js();
});

function load_js()
{
    //$.getScript("http://maps.google.com/maps/api/js?sensor=false&callback=map_init");
    //alert("after load google map");
    $.getScript("http://www.google-analytics.com/ga.js", function(){
            
        pageTracker = _gat._getTracker("UA-5765829-1");
        pageTracker._trackPageview();
        //alert("after asy");
    });
    
}

function maketolink_by_server(depart)
{
//	$("#container_to").html("");
    //alert(depart);
 $('#arrive_list').html('<br/><br/><div class="info"><p>Please wait... '
                        + '<img src="./js/jqtouch/themes/apple/img/loading.gif">'
                        //+ '<span class="loading_img"/>'
                            + "<br/>Search arrive City data from server.</p> </div>");	
    //$('#fly-plan').block('<h1>Processing</h1>', { border: '3px solid #a00' });
    //$("#to_frame").slideToggle("normal");
    //alert(language);
	$.getJSON("../search/airline/arriveinfo/" + depart + "/" + language , function(json){
		//alert("Data Loaded: " + json[0].arrive);
         //$('#fly-plan').unblock();
         to_json = json;
         //alert(json);
         var i = 0 ;
         //$("#container_to").html("");
         var restr = "";
         //$("#to-states").attr("loc_value",$(this).attr("loc_value"));
        var arrive_select_status = $("#to-states").attr("loc_value");
        var have_arrive_select = false;
        //var one_line_length = 20;
        var append_html = ""
        //var col = 0 ;
		while ( i < json.length )
		{
	        var strtmp = '';
	        //$("#returnvalue1").append('<div class="frame_Column">');
	         for ( k = 0 ; i < json.length  ; k++)
	    	 {
	    		if ( restr != json[i].country  || 0 == k)
	    		{
                    
                    restr=json[i].country;
                    //strtmp += '<div class="country_list">'+restr+'</div>'
                    strtmp += '<li class="sep">' + restr + '</li>';
                    /*
                    if ( k + 3 <= one_line_length )
                    {
                        restr=json[i].country;
                        //strtmp += '<div class="country_list">'+restr+'</div>'
                        strtmp += '<li class="sep">' + res</li>;
                        
                        //k = k + 2;
                        //k++;
                    }
                    else
                    {
                        break;
                    }
                    */
	    		}
	    		strtmp += '<li><a class="goback locatedata" href="#" loc_value="'+json[i].arrive+'" >' +json[i].name+'</a></li>';
                if ( json[i].arrive == arrive_select_status)
                {
                    have_arrive_select = true;
                }
	    	 
                i++;
	    	}
            append_html = append_html + strtmp;
         //   col++;
	    	//$("#container_to").append('<div class="frame_Column">'+strtmp +'</div>');
	    }
        //alert("abc" + append_html);
        append_html = '<ul class="edgetoedge">' + append_html + '</ul>';
        $("#arrive_list").html(append_html);
      
        if ( false == have_arrive_select )
        {
           //$("#to-states").val("");
           $("#to-states").html(__("To") + ":" + __("Please select") );
           $("#to-states").attr("loc_value","");
           //$("#tospan").html("");
           //$("#to_frame").show();
           //$("#to_frame").slideToggle("normal");
        }
        
        make_query_link_by_server($("#to-states").attr("loc_value"));
	    //$(".locatedata").click(to_click);
	});
}

function to_click()
{
    $('#to-states').text(__('To') +  ':' +  $(this).text());
    $('#to-states').attr("loc_value",$(this).attr("loc_value"));
	make_query_link_by_server($("#to-states").attr("loc_value"));
}

function make_query_link_by_server($arrive)
{
    
	$("#search_button_list").html("");
    
	for ( i = 0 ; i < to_json.length ; i++)
	{
		if ( $arrive == to_json[i].arrive )
		{
			for ( j =0 ; j < to_json[i].company.length ; j++)
			{
				//$("#query_div").append('<div class="querycompany"><a class="querycompany" href="#" company="'+to_json[i].company[j].id+'">Query by '+to_json[i].company[j].name+'</a><div>');
				$("#search_button_list").append('<li><a class="querycompany' + to_json[i].company[j].sts + '"'
                                          + 'href="#" company="'+ to_json[i].company[j].id
                                          + '">' + __("Search by") + " " +to_json[i].company[j].name+'</a></li>');
				
			}
			//$(".querycompany1").tap(query_airline_data);
			//$(".querycompany0").tap(notquery_airline_data);
		}
	}
}

function notquery_airline_data()
{
   alert('"Search by ' + $(this).attr("company")
         + '" '
         + __('is currently not available,Webmaster will fixing this problems.Please try later')
         );
}

function query_airline_data()
{
    //alert("Search airline test");
    var depart,arrive;
    var dep_year,dep_month,dep_day;
    var arr_year,arr_month,arr_day;
    
    depart   = $("#local-states").attr("loc_value");
    arrive   = $("#to-states").attr("loc_value");
	
	var datetmp = $("#fly-date").val();
	dep_year = datetmp.substring(0,4);
	dep_month = datetmp.substring(5,7);
	dep_day  = datetmp.substring(8,10);
	
	var datetmp = $("#return-date").val();
	arr_year = datetmp.substring(0,4);
	arr_month = datetmp.substring(5,7);
	arr_day  = datetmp.substring(8,10);
    
    var has_return_way = $("#return-checkbox").attr("checked");
    
    var query_str_id;
    query_str_id = 'search_' +depart + "_" + arrive
                     + "_" + dep_year + dep_month + dep_day;
    if ( has_return_way )
    {
        query_str_id = query_str_id + "_" + arr_year + arr_month + arr_day;
    }
    query_str_id = query_str_id + "_" + $(this).attr("company");
    
    var company_name = $(this).html();
    company_name = company_name.substring(10,1000);
    //alert(company_name);
    var query_str_info =  $("#local-states").text() + "---" + $("#to-states").text()
                            + " " + $("#fly-date").val();
    if ( has_return_way )
    {
        query_str_info = query_str_info + " " + $("#return-date").val();
    }
    query_str_info = query_str_info + " Search by " + company_name;
     
    //depart   = combo.getValue();
    //arrive   = combo2.getValue();
    /*
    var datetmp = flydate.getValue();
    dep_year = datetmp.format("Y");
    dep_month= datetmp.format("m");
    dep_day  = datetmp.format("d");
    
    datetmp = returndate.getValue();
    arr_year = datetmp.format("Y");
    arr_month= datetmp.format("m");
    arr_day  = datetmp.format("d");
    */
    param = {depart   : depart, 
            arrive   : arrive,
            dep_year : dep_year,
            dep_month: dep_month,
            dep_day  : dep_day,
            arr_year : arr_year,
            arr_month: arr_month,
            arr_day  : arr_day
    };
    
    //$('#fly-plan').block('<h1>Processing</h1>', { border: '3px solid #a00' });
    //alert($(this).attr("company"));
    if ( $("#" + query_str_id).html() != null)
    {
      return 0;
    }
    //alert($("#" + query_str_id).html());
    
    tracker_log = pageTracker._trackEvent($(this).attr("company")
                                          ,depart+"-"+arrive + "-" + "iphone"
                                          ,$("#local-states").val() + "-" + $("#to-states").val() );
    debug_log("tracker:" + tracker_log + " log_data: category:" + $(this).attr("company") + " action:" +depart+"-"+arrive + " opt_label:" + $("#local-states").val() + "-" + $("#to-states").val() );
    
    $("#search_info").append('<div id="' + query_str_id + '"  class="search_info">'
                             + query_str_info
                             //+ '  <span class="loading_img"/>'
                             + '<img src="./js/jqtouch/themes/apple/img/loading.gif">'
                             + '</div>');
    $("#search_info").show();
    //alert($("#" + query_str_id).html());
	var getpath = "../search/airline/airlineinfo/"  + depart + "/" + arrive + "/" + $(this).attr("company")
                    + "/" + dep_year + dep_month + dep_day
                    + "/" + arr_year + arr_month + arr_day
                    + "/" + has_return_way
                    + "/" + language;
    /* 针对IE6查询缓存问题。防止ie6直接从缓存拿数据，增加多一个无用参数不断增加1. */
    getpath = getpath + "/" + searchcount ;
    //searchcount++;
    searchcount = searchcount + 1;
    //alert(getpath);
    //$.post(
	$.get(
      getpath
     ,{}
     ,function(data) { 
    	//$('#fly-plan').unblock();
		debug_log(data);
        //alert(data);
        $("#" + query_str_id).remove();
        //alert($.trim($("#search_info").html()).length);
        if ( $.trim($("#search_info").html()).length == 0 )
        {
            $("#search_info").hide();
        }
        //alert($("#" + query_str_id).html());
        try
        {
            var arydata = eval("("+data+")");
            if ( arydata.errorcode > 0  )
            //if ( arydata.errorcode > 0 & arydata.errorcode < 20 )
            {
                if ( has_return_way || arydata.errorcode != 36 )
                {
                    alert (query_str_info + __(" has some error:")
                           + "\r\n" + arydata.errormsg);
                }
                //return 0;
            }
            do_return_data_jquery(arydata.price,arydata.tax,depart,arrive,has_return_way);
        }
        catch(err)
        {
            //debug_log("errermessage:" + err.message + " data:" + data);
            //alert("Return data error.Please try again." + "errermessage:" + err.message + " data:" + data);
            if ( "" == data )
            {
                alert( __("Timeout for ") + query_str_info + __(".Please try again."));
            }
            
        }
    });
    
}


function do_return_data_jquery(arydata,taxdata,depart,arrive,has_return_way)
{
	var dep_datastr="";
	var arr_datastr="";
    var company_link ="";
	var i = 0;
    
    if ( arydata.length < 1 )
    {
      return 0;
    }
	for ( i=0;i<arydata.length;i++)
	{
		if ( depart == arydata[i].depart )
		{

			dep_datastr = dep_datastr +  make_date_tr(taxdata,taxdata.depart.name,taxdata.arrive.name
                                                ,arydata[i],taxdata.Skytax.depart_tax,taxdata.Skytax.depart_cur);
		}
		else
		{
			arr_datastr = arr_datastr +  make_date_tr(taxdata,taxdata.arrive.name,taxdata.depart.name
                                                ,arydata[i],taxdata.Skytax.arrive_tax,taxdata.Skytax.arrive_cur);
		}
	}
	create_tablesort(arrive,taxdata.arrive.name,dep_datastr,taxdata.arrivegeo);
    if ( has_return_way )
    {
        create_tablesort(depart,taxdata.depart.name,arr_datastr,taxdata.departgeo);
    }
    $(".connect_info").click(connect_click);
 //   $(".delete_item").click(delete_item_click);

}

function create_tablesort(arrives,arrive_name,datastr,geodata)
{
	//alert(typeof $('#'+arrives+'_tabid').html);
	//alert($('#'+arrives+'_tabid').html());
	//if ( 'undefined' == $('#'+arrives+'_tabid') )
    id_name = arrives + '_tabid';
    //alert("id_name:" + $('#'+ id_name ).html());
    
	if ( null == $('#'+ id_name ).html() )
	//if ( null == $('#'+arrives+'_tabid').html() )
	{
        var map_str = "";
        /*
        if ( undefined != $.fn.geoLightBox )
        {
            
            map_str = ' <img src="./images/geo/lightbox-btn-geo16.png"/>'
                    +' <a id="' + arrives + '_map" rel="lightbox" href="" '
                    + ' title="' + arrive_name  + __(" airport")+ '" lng="' + geodata.lng + '"' + ' lat="' + geodata.lat + '" >'
                    +  __('See airport@map') + '</a>'
        }
        */
        var html_data= 
                    '<h3>' +  __('To') + ' ' + arrive_name
                    + map_str
                    + "</h3>"
                    //+'Search result:'
					+'<table id="'+arrives+'_grid'+'" class="tablesorter" border="0" cellpadding="0" cellspacing="0">'
                    /*
					+'<thead>' 
					+'<tr>'
					+'<th>' + + __("From") + '<br/>' + __("Air Company") + '</th>'
					//+'<th>' + __("From") + '</th>'
					+'<th>' + __("Depart") + '</th>'
					+'<th>' + __("Arrive") + '</th>'
					+'<th>' + __("Fare") + '</th>'
					//+'<th>' + __("Total") + '</th>'
					//+'<th>Cur</th>'
					+'</tr>'
					+'</thead>'
                                                                          */
					+'<tbody>'
					+ datastr
					+'</tbody>'
					+'</table>'
                    /*
                    +"<ul>"
                    +"<li>" + __("tableinfo1") + "</li>"
                    +"<li>" + __("tableinfo2") + "</li>"
                    +"<li>" + __("tableinfo3") + "</li>"
                    +"</ul>"
                     */
					//+'You can click table head to sort by head.';
         
       $('body').append( '<div id="' + id_name +'"> <div class="toolbar">'
                        + '<h1>' + __("To") + ': ' +  arrive_name + '</h1> <a href="#" class="back">'
                        + __('Back') + '</a>'
                        + '</div>'
                        + html_data
                        + '</div>');
       $('#result').append('<li class="arrow"><a href="#' + id_name + '">' + __("To") + ': ' + arrive_name + '</a></li>');
        //price_tab.tabs("add",'#'+arrives+'_tabid',__('To') + ' ' + arrive_name);
        //price_tab.tabs("add",'#'+arrives+'_tabid','To '+ arrive_name);
		//$('#'+arrives+'_tabid').html(html_data);
        
        /*
   		$("#"+arrives+"_grid").tablesorter({ widgets: ['zebra']
										//,debug: true 
										// ,textExtraction: function(node) { 
											// extract data from markup and return it  
											// alert (node); 
											// return node.innerHTML; 
											// return node.text(); 
											// }
										,headers: { 
									                2: { 
									                    sorter:'datetimeline' 
									                }
													,3: { 
									                    sorter:'dateline' 
									                }
													,4: { 
									                    sorter:'pricedata' 
									                }
													,5: {
														sorter:'totaldata'
													}
									            }
										});
                                                                      */
        
/*        
        if ( undefined != $.fn.geoLightBox )
        {
            $('#' + arrives + '_map').geoLightBox({
                                                mapOrImage:             "Map",
                                              	imageLoading:			'images/geo/lightbox-ico-loading.gif',		// (string) Path and the name of the loading icon
                                                imageBtnPrev:			'images/geo/lightbox-btn-prev.gif',			// (string) Path and the name of the prev button image
                                                imageBtnNext:			'images/geo/lightbox-btn-next.gif',			// (string) Path and the name of the next button image
                                                imageBtnClose:			'images/geo/lightbox-btn-close.gif',		// (string) Path and the name of the close btn
                                                imageBtnPIC:			'images/geo/lightbox-btn-geo.gif',		// (string) Path and the name of the close btn
                                                imageBtnGEO:			'images/geo/lightbox-btn-geo.gif',		// (string) Path and the name of the close btn
                                                imageBlank:				'images/geo/lightbox-blank.gif',			// (string) Path and the name of a blank image (one pixel)
                                                imageCamera:            'images/geo/beachflag.png',
                                                imageCurrentCamera:     'images/geo/camera.png'
                                                });
        }
                                                                          */       
    }
	else
	{
		inser_tabledata(arrives,datastr)
	}
}

function make_date_tr(taxdata,dep_name,arr_name,arydata,tax,cur)
{
      company_link = '<a target="_blank" href="' + check_link_head(taxdata.Company.url)
                        + '" >' + arydata.air_company + "</a>"; // + searchcount;
      connect_link_str = "";
      if ( undefined != arydata.info )
      {
         connect_link_str = '<a class="connect_info" title="' + arydata.info.replace("\n","<br>") + '" href="#"></a>'
      }
      if ( arydata.tax != "N" )
      {
         tax = arydata.tax;
         cur = arydata.currency
      }
      tr_rel = arydata.air_company + "_" + arydata.depart + "_"
                + arydata.arrive + "_" + arydata.dep_date;
                
      delete_same_item(tr_rel);
      var tax_int = Number(fix_tax_info(tax));
      var fare_int =  Number(arydata.fare);
      tr_str = '<tr rel="' + tr_rel + '">'
       			+ '<td class="from_td">'
               // + '<a class="delete_item" href="#"><span class="ui-icon ui-icon-closethick"/></a>'
                + dep_name + '<br/>\r\n' + company_link +'</td>'
				//+ '<td>'+ dep_name +'</td>'
				+ '<td class="from_time">'
                        //+ arydata.dep_date.substr(0,4) 
			   			//+ "-"
                        +  arydata.dep_date.substr(4,2)
						+ "-" + arydata.dep_date.substr(6,2)
						+' <br>'+ arydata.dep_time.substr(0,2) 
						+ ":" + arydata.dep_time.substr(2,2)	+'</td>'
				+ '<td class="to_time">'
                        //+ arydata.arr_date.substr(0,4) 
			   			//+ "-"
                        +  arydata.arr_date.substr(4,2)
						+ "-" + arydata.arr_date.substr(6,2)
						+' <br>'+ arydata.arr_time.substr(0,2) 
						+ ":" + arydata.arr_time.substr(2,2)
                        + connect_link_str
                       +'</td>'
				//+ '<td class="price">'+ arydata.fare + " " + arydata.currency  +'</td>'
         				+ '<td class="price">'
                        + 'Fare:<span class="fare">'
                        + arydata.fare + " " + arydata.currency  + '</span><br/>'
                        + format_tax_info( tax, cur)
         				//+ '<td class="price">'+ "Tax:   " + tax + " " + cur 
						+'<br> Total:  <span class="total">' + format_int_tostring( fare_int + tax_int) 
						//+'<br> Total:  <span class="total">' + format_int_tostring( Number(fix_tax_info(tax)) + Number(arydata.fare)) 
						+ " " + arydata.currency
                        + "</span>"
						+ "</td>"
				+ '</tr>';
	   
   return tr_str;
}


function delete_same_item($rel)
{
    $("tr[rel='" + $rel + "']").remove();
    //$("tr[rel='" + $rel + "']").hide();
}

function format_tax_info(tax,currency)
{
   if ( "unknow" == tax)
   {
      return 'Tax:<span class="tax">unknow</span>';
   }
   else if ( "include" == tax)
   {
      tax = "0";
      return "Fare include tax";
   }
   else
   {
      return  'Tax:<span class="tax">' + tax + " " + currency + "</span>";
   }
   return "";
}

function format_int_tostring(el)
{
	var obj;    
    var val = el.toString() ; //obj.value;
    
    ary = val.split(".");
    if(ary.length==1)
    {
        if(val == "")
            val = "0";
        obj = val + ".00";
    }
    else
    {
        if(ary[1].length<2)
            obj = val + "0";
        else if(ary[1].length>=2)
            obj = ary[0] + "." + ary[1].substring(0,2);
    }
	return obj;
}

function fix_tax_info(tax)
{
    if ( "unknow" == tax  || "include" == tax)
    {
        return "0";
    }
    
    return tax;
}


function connect_click($obj)
{
   alert($(this).attr("title").replace("<br>","\n"));
   return false;
}

function inser_tabledata(place,datastr)
{
	$("#"+place+"_grid tbody").append(datastr);
	//$("#"+place+"_grid").trigger("update"); 
}


function change_depart_day()
{
    year_month_change("depart")
    set_select_day("depart","return",1)
}

function change_return_day()
{
    year_month_change("return")
    set_select_day("return","depart",-1)
}

function set_select_day(change_date,state_date,n)
{
    var depart_date,return_date;
    
    depart_date = $("#depart_year").val()+  $("#depart_month").val()
                    +  $("#depart_date").val();
                    
    return_date= $("#return_year").val()+ $("#return_month").val()
                    +  $("#return_date").val();
    //alert("depart:" + depart_date +"\n arrive:" + return_date ) ;
    if ( depart_date >= return_date )
    {
        alert(__("Dpart date must before Return date."));
        var dd = new Date()
        dd.setFullYear($("#" + change_date + "_year").val());
        dd.setMonth($("#" + change_date + "_month").val()-1);
        dd.setDate($("#" + change_date + "_date").val());
        
        //d.setTime(d.getTime() + 1*24*60*60*1000);
        //alert(dd.toDateString());
        $("#" + state_date + "_year").val(getdatebydate(dd,n,"Y"));
        //alert(dd.toDateString());
        $("#" + state_date + "_month").val(getdatebydate(dd,n,"m"));
        //alert(dd.toDateString());
        $("#" + state_date + "_date").val(getdatebydate(dd,n,"d"));
    }
                    
    depart_date = $("#depart_year").val()+ "-" + $("#depart_month").val()
                    + "-" + $("#depart_date").val();
    $("#fly-date").val(depart_date);
    $("#fly-date").text(__("Depart date") + ": " + depart_date);
    
    return_date= $("#return_year").val()+ "-" + $("#return_month").val()
                    + "-" + $("#return_date").val();
    $("#return-date").val(return_date);
    $("#return-date").text(__("Return date") + ": " + return_date);
}
function setflyday()
{
    var d = 7, r = 14;
    /*
    $("#fly-date").val(getdate(d));
    $("#fly-date").text("Depart date: " + getdate(d));
    $("#return-date").val(getdate(r));
    $("#return-date").text("Return date: " + getdate(r));
    */
    
    $("#depart_date").val(getdate(d,"d"));
    $("#depart_month").val(getdate(d,"m"));
    $("#depart_year").val(getdate(d,"Y"));
    
    $("#return_date").val(getdate(r,"d"));
    $("#return_month").val(getdate(r,"m"));
    $("#return_year").val(getdate(r,"Y"));
    
    year_month_change("depart")
    year_month_change("return")
    set_select_day();
}

function year_month_change(name)
{
    var year,month;
    var n;
    
    year = $("#" + name + "_year").val();
    month = $("#" + name + "_month").val();
    day = $("#" + name + "_date").val();
    
    n = getmonthday(year,month);
    
    $("#" + name + "_date").html(day_select_list_str(n));
    
    
    if ( day > n )
    {
        $("#" + name + "_date").val(n);
    }
    else
    {
        $("#" + name + "_date").val(day);
    }
    
}

function day_select_list_str(n)
{
   var str = '<option value ="01">01</option>'
             +'<option value ="02">02</option>'
             +'<option value ="03">03</option>'
             +'<option value ="04">04</option>'
             +'<option value ="05">05</option>'
             +'<option value ="06">06</option>'
             +'<option value ="07">07</option>'
             +'<option value ="08">08</option>'
              +'<option value ="09">09</option>'
              +'<option value ="10">10</option>'
              +'<option value ="11">11</option>'
              +'<option value ="12">12</option>'
              +'<option value ="13">13</option>'
              +'<option value ="14">14</option>'
              +'<option value ="15">15</option>'
              +'<option value ="16">16</option>'
              +'<option value ="17">17</option>'
              +'<option value ="18">18</option>'
              +'<option value ="19">19</option>'
              +'<option value ="20">20</option>'
              +'<option value ="21">21</option>'
              +'<option value ="22">22</option>'
              +'<option value ="23">23</option>'
              +'<option value ="24">24</option>'
              +'<option value ="25">25</option>'
              +'<option value ="26">26</option>'
              +'<option value ="27">27</option>'
              +'<option value ="28">28</option>';
    
    //n = getmonthday(year,month);
    //alert(n);
    for ( i = 29 ; i <= n ; i++)
    {
        str = str + '<option value ="' + i + '">' + i + '</option>';
    }
    //alert(str);
    return str
}

function getmonthday(year,month)
{
    var d;
    d = new Date();
    d.setFullYear(year);
    d.setMonth(month );
    d.setDate(1);
    d.setTime(d.getTime()- 1*24*60*60*1000);
    //alert(d.toUTCString());
    return d.getDate();
}

function getdate(n,type)
{
   var d;
   d = new Date();
   return getdatebydate(d,n,type);
}
function getdatebydate(dd,n,type)
{
    var s = "";
    var d = new Date();
   d.setTime(dd.getTime()+n*24*60*60*1000);
   
   s += d.getFullYear()+ "-";
   s += (d.getMonth() + 1) + "-";
   s += d.getDate();
   
   if ("Y" == type)
   {
        return d.getFullYear();
   }
   else if ( "m" == type )
   {
        if ( d.getMonth() < 9 )
            return "0" +(d.getMonth() + 1);
        else
            return d.getMonth()+1;
   }
   else if ( "d" == type )
   {
        if ( d.getDate() < 10 )
            return  "0" + d.getDate();
        else
            return  d.getDate();
   }
   
   return s;
} 
    
function search_button_click()
{
                alert($(this).text());
                return false;
}


function check_link_head(url)
{
   if ( url.toLowerCase().indexOf("http://") != 0 )
   {
      url = "http://" + url
   }
   
   return  url;
}

function debug_log(s) {
				if (typeof console != "undefined" && typeof console.debug != "undefined") {
					//console.log(s);
				} 
				else {
					//alert(s);
				}
}


