<!-- 

var listing_style = "states";

var states = new Array(); 
states["AZ"] = "Arizona";
states["CA"] = "California";
states["CT"] = "Connecticut";
states["DC"] = "District of Columbia";
states["DE"] = "Delaware";
states["FL"] = "Florida";
states["GA"] = "Georgia";
states["IL"] = "Illinois";
states["MA"] = "Massachusetts";
states["MD"] = "Maryland";
states["NC"] = "North Carolina";
states["NV"] = "Nevada";
states["NY"] = "New York";
states["OH"] = "Ohio";
states["PA"] = "Pennsylvania";
states["VA"] = "Virginia";
states["WA"] = "Washington";
states["BC"] = "British Columbia";
 
 //-->

<!--
var b_cities = new Array('Albany, NY', 'Anaheim, CA', 'Arlington, VA', 'Atlanta, GA', 'Baltimore, MD', 'Bellingham Airport, WA', 'Bethesda, MD', 'Boston, MA', 'Buffalo, NY', 'Chandler, AZ', 'Chicago, IL', 'Cincinnati, OH', 'Cupertino, CA', 'Dayton, OH', 'Fairfax, VA', 'Hagerstown, MD', 'Harrisburg, PA', 'Hartford, CT', 'Hollywood, CA', 'Huntington Park, CA', 'JFK Airport, NY', 'John Wayne Airport, CA', 'King of Prussia, PA', 'Kissimmee, FL', 'LAX Airport or Hotels, CA', 'LGA Airport, NY', 'Lancaster, PA', 'Las Vegas, NV', 'Liverpool, NY', 'Los Angeles, CA', 'Miami, FL', 'New York, NY', 'Newport News, VA', 'Norfolk, VA', 'Oakland, CA', 'Orlando, FL', 'Philadelphia, PA', 'Phoenix, AZ', 'Pittsburgh, PA', 'Raleigh, NC', 'Richmond, VA', 'Rochester, NY', 'Rockville, MD', 'Rosemead, CA', 'San Diego, CA', 'San Francisco, CA', 'San Leandro, CA', 'San Ysidro, CA', 'Santa Monica, CA', 'Seattle Airport, WA', 'Seattle, WA', 'Springfield, VA', 'State College, PA', 'Syracuse, NY', 'Tempe, AZ', 'Tulalip, WA', 'Turning Stone Casino, NY', 'Vancouver, BC', 'Virginia Beach, VA', 'Washington, DC', 'Westminster, CA', 'Wheaton, MD', 'Willow Grove, PA', 'Wilmington, DE', 'Woodbury Outlets, NY', 'York, PA');
var g_bus = new Object;
var total_cities = b_cities.length;
for (i=0; i<total_cities; i++)
  g_bus[b_cities[i]] = new Array;

g_bus['Albany, NY'][0] = 'New York, NY';
g_bus['Albany, NY'][1] = 'Turning Stone Casino, NY';
g_bus['Anaheim, CA'][0] = 'Hollywood, CA';
g_bus['Anaheim, CA'][1] = 'John Wayne Airport, CA';
g_bus['Anaheim, CA'][2] = 'LAX Airport or Hotels, CA';
g_bus['Anaheim, CA'][3] = 'Las Vegas, NV';
g_bus['Anaheim, CA'][4] = 'Los Angeles, CA';
g_bus['Anaheim, CA'][5] = 'San Diego, CA';
g_bus['Anaheim, CA'][6] = 'Universal Studios, CA';
g_bus['Arlington, VA'][0] = 'New York, NY';
g_bus['Atlanta, GA'][0] = 'New York, NY';
g_bus['Baltimore, MD'][0] = 'New York, NY';
g_bus['Bellingham Airport, WA'][0] = 'Vancouver, BC';
g_bus['Bethesda, MD'][0] = 'New York, NY';
g_bus['Boston, MA'][0] = 'Hartford, CT';
g_bus['Boston, MA'][1] = 'Mohegan Sun Casino, CT';
g_bus['Boston, MA'][2] = 'New York, NY';
g_bus['Buffalo, NY'][0] = 'New York, NY';
g_bus['Buffalo, NY'][1] = 'Turning Stone Casino, NY';
g_bus['Chandler, AZ'][0] = 'Los Angeles, CA';
g_bus['Chandler, AZ'][1] = 'Rosemead, CA';
g_bus['Chandler, AZ'][2] = 'Westminster, CA';
g_bus['Chicago, IL'][0] = 'New York, NY';
g_bus['Cincinnati, OH'][0] = 'New York, NY';
g_bus['Cupertino, CA'][0] = 'Los Angeles, CA';
g_bus['Dayton, OH'][0] = 'New York, NY';
g_bus['Fairfax, VA'][0] = 'Atlantic City, NJ';
g_bus['Hagerstown, MD'][0] = 'New York, NY';
g_bus['Harrisburg, PA'][0] = 'New York, NY';
g_bus['Hartford, CT'][0] = 'Boston, MA';
g_bus['Hartford, CT'][1] = 'New York, NY';
g_bus['Hollywood, CA'][0] = 'Anaheim, CA';
g_bus['Hollywood, CA'][1] = 'Las Vegas, NV';
g_bus['Hollywood, CA'][2] = 'San Diego, CA';
g_bus['Hollywood, CA'][3] = 'San Francisco, CA';
g_bus['Hollywood, CA'][4] = 'San Leandro, CA';
g_bus['Huntington Park, CA'][0] = 'Las Vegas, NV';
g_bus['JFK Airport, NY'][0] = 'New York, NY';
g_bus['JFK Airport, NY'][1] = 'Newark, NJ';
g_bus['JFK Airport, NY'][2] = 'Union City, NJ';
g_bus['John Wayne Airport, CA'][0] = 'Anaheim, CA';
g_bus['King of Prussia, PA'][0] = 'New York, NY';
g_bus['Kissimmee, FL'][0] = 'Miami, FL';
g_bus['LAX Airport or Hotels, CA'][0] = 'Anaheim, CA';
g_bus['LAX Airport or Hotels, CA'][1] = 'Las Vegas, NV';
g_bus['LAX Airport or Hotels, CA'][2] = 'San Diego, CA';
g_bus['LGA Airport, NY'][0] = 'New York, NY';
g_bus['Lancaster, PA'][0] = 'New York, NY';
g_bus['Las Vegas, NV'][0] = 'Anaheim, CA';
g_bus['Las Vegas, NV'][1] = 'Hollywood, CA';
g_bus['Las Vegas, NV'][2] = 'Huntington Park, CA';
g_bus['Las Vegas, NV'][3] = 'LAX Airport or Hotels, CA';
g_bus['Las Vegas, NV'][4] = 'Los Angeles, CA';
g_bus['Las Vegas, NV'][5] = 'San Diego, CA';
g_bus['Las Vegas, NV'][6] = 'San Ysidro, CA';
g_bus['Las Vegas, NV'][7] = 'Tijuana, BC';
g_bus['Liverpool, NY'][0] = 'New York, NY';
g_bus['Los Angeles, CA'][0] = 'Anaheim, CA';
g_bus['Los Angeles, CA'][1] = 'Chandler, AZ';
g_bus['Los Angeles, CA'][2] = 'Cupertino, CA';
g_bus['Los Angeles, CA'][3] = 'Las Vegas, NV';
g_bus['Los Angeles, CA'][4] = 'Oakland, CA';
g_bus['Los Angeles, CA'][5] = 'Phoenix, AZ';
g_bus['Los Angeles, CA'][6] = 'San Diego, CA';
g_bus['Los Angeles, CA'][7] = 'San Francisco, CA';
g_bus['Los Angeles, CA'][8] = 'San Leandro, CA';
g_bus['Los Angeles, CA'][9] = 'Tempe, AZ';
g_bus['Miami, FL'][0] = 'Kissimmee, FL';
g_bus['Miami, FL'][1] = 'Orlando, FL';
g_bus['New York, NY'][0] = 'Albany, NY';
g_bus['New York, NY'][1] = 'Arlington, VA';
g_bus['New York, NY'][2] = 'Atlanta, GA';
g_bus['New York, NY'][3] = 'Baltimore, MD';
g_bus['New York, NY'][4] = 'Bethesda, MD';
g_bus['New York, NY'][5] = 'Boston, MA';
g_bus['New York, NY'][6] = 'Buffalo, NY';
g_bus['New York, NY'][7] = 'Chicago, IL';
g_bus['New York, NY'][8] = 'Cincinnati, OH';
g_bus['New York, NY'][9] = 'Dayton, OH';
g_bus['New York, NY'][10] = 'Hagerstown, MD';
g_bus['New York, NY'][11] = 'Harrisburg, PA';
g_bus['New York, NY'][12] = 'Hartford, CT';
g_bus['New York, NY'][13] = 'JFK Airport, NY';
g_bus['New York, NY'][14] = 'King of Prussia, PA';
g_bus['New York, NY'][15] = 'LGA Airport, NY';
g_bus['New York, NY'][16] = 'Lancaster, PA';
g_bus['New York, NY'][17] = 'Liverpool, NY';
g_bus['New York, NY'][18] = 'Newport News, VA';
g_bus['New York, NY'][19] = 'Norfolk, VA';
g_bus['New York, NY'][20] = 'Philadelphia, PA';
g_bus['New York, NY'][21] = 'Pittsburgh, PA';
g_bus['New York, NY'][22] = 'Raleigh, NC';
g_bus['New York, NY'][23] = 'Richmond, VA';
g_bus['New York, NY'][24] = 'Rochester, NY';
g_bus['New York, NY'][25] = 'Rockville, MD';
g_bus['New York, NY'][26] = 'State College, PA';
g_bus['New York, NY'][27] = 'Syracuse, NY';
g_bus['New York, NY'][28] = 'Turning Stone Casino, NY';
g_bus['New York, NY'][29] = 'Virginia Beach, VA';
g_bus['New York, NY'][30] = 'Washington, DC';
g_bus['New York, NY'][31] = 'Willow Grove, PA';
g_bus['New York, NY'][32] = 'Wilmington, DE';
g_bus['New York, NY'][33] = 'Woodbury Outlets, NY';
g_bus['New York, NY'][34] = 'York, PA';
g_bus['Newport News, VA'][0] = 'New York, NY';
g_bus['Norfolk, VA'][0] = 'New York, NY';
g_bus['Oakland, CA'][0] = 'Los Angeles, CA';
g_bus['Orlando, FL'][0] = 'Miami, FL';
g_bus['Philadelphia, PA'][0] = 'New York, NY';
g_bus['Philadelphia, PA'][1] = 'Washington, DC';
g_bus['Phoenix, AZ'][0] = 'Los Angeles, CA';
g_bus['Phoenix, AZ'][1] = 'Rosemead, CA';
g_bus['Phoenix, AZ'][2] = 'Westminster, CA';
g_bus['Pittsburgh, PA'][0] = 'New York, NY';
g_bus['Raleigh, NC'][0] = 'New York, NY';
g_bus['Richmond, VA'][0] = 'New York, NY';
g_bus['Richmond, VA'][1] = 'Washington, DC';
g_bus['Rochester, NY'][0] = 'New York, NY';
g_bus['Rochester, NY'][1] = 'Turning Stone Casino, NY';
g_bus['Rockville, MD'][0] = 'New York, NY';
g_bus['Rosemead, CA'][0] = 'Chandler, AZ';
g_bus['Rosemead, CA'][1] = 'Phoenix, AZ';
g_bus['Rosemead, CA'][2] = 'Tempe, AZ';
g_bus['San Diego, CA'][0] = 'Anaheim, CA';
g_bus['San Diego, CA'][1] = 'Hollywood, CA';
g_bus['San Diego, CA'][2] = 'LAX Airport or Hotels, CA';
g_bus['San Diego, CA'][3] = 'Las Vegas, NV';
g_bus['San Diego, CA'][4] = 'Los Angeles, CA';
g_bus['San Francisco, CA'][0] = 'Hollywood, CA';
g_bus['San Francisco, CA'][1] = 'Los Angeles, CA';
g_bus['San Francisco, CA'][2] = 'Reno, NV';
g_bus['San Francisco, CA'][3] = 'Santa Monica, CA';
g_bus['San Francisco, CA'][4] = 'Yosemite, CA';
g_bus['San Leandro, CA'][0] = 'Hollywood, CA';
g_bus['San Leandro, CA'][1] = 'Los Angeles, CA';
g_bus['San Leandro, CA'][2] = 'Santa Monica, CA';
g_bus['San Ysidro, CA'][0] = 'Las Vegas, NV';
g_bus['Santa Monica, CA'][0] = 'San Francisco, CA';
g_bus['Santa Monica, CA'][1] = 'San Leandro, CA';
g_bus['Seattle Airport, WA'][0] = 'Vancouver, BC';
g_bus['Seattle, WA'][0] = 'Vancouver, BC';
g_bus['Springfield, VA'][0] = 'Atlantic City, NJ';
g_bus['State College, PA'][0] = 'New York, NY';
g_bus['Syracuse, NY'][0] = 'New York, NY';
g_bus['Syracuse, NY'][1] = 'Turning Stone Casino, NY';
g_bus['Tempe, AZ'][0] = 'Los Angeles, CA';
g_bus['Tempe, AZ'][1] = 'Rosemead, CA';
g_bus['Tempe, AZ'][2] = 'Westminster, CA';
g_bus['Tulalip, WA'][0] = 'Vancouver, BC';
g_bus['Turning Stone Casino, NY'][0] = 'Buffalo, NY';
g_bus['Turning Stone Casino, NY'][1] = 'New York, NY';
g_bus['Turning Stone Casino, NY'][2] = 'Rochester, NY';
g_bus['Turning Stone Casino, NY'][3] = 'Syracuse, NY';
g_bus['Vancouver, BC'][0] = 'Bellingham Airport, WA';
g_bus['Vancouver, BC'][1] = 'Seattle Airport, WA';
g_bus['Vancouver, BC'][2] = 'Seattle, WA';
g_bus['Vancouver, BC'][3] = 'Tulalip, WA';
g_bus['Virginia Beach, VA'][0] = 'New York, NY';
g_bus['Washington, DC'][0] = 'New York, NY';
g_bus['Washington, DC'][1] = 'Philadelphia, PA';
g_bus['Washington, DC'][2] = 'Richmond, VA';
g_bus['Westminster, CA'][0] = 'Chandler, AZ';
g_bus['Westminster, CA'][1] = 'Phoenix, AZ';
g_bus['Westminster, CA'][2] = 'Tempe, AZ';
g_bus['Wheaton, MD'][0] = 'Atlantic City, NJ';
g_bus['Willow Grove, PA'][0] = 'New York, NY';
g_bus['Wilmington, DE'][0] = 'New York, NY';
g_bus['Woodbury Outlets, NY'][0] = 'New York, NY';
g_bus['York, PA'][0] = 'New York, NY';
///////////// function
function update_bus_from()
{
	var bf_obj = get_bus_from_obj();
	while(bf_obj.hasChildNodes())
	{
		bf_obj.removeChild(bf_obj.lastChild);

	}
	bf_obj.options[0] = new Option("Departure City","");
	if(listing_style == 'states')
	{
		bus_listing_states(bf_obj);
	}
	else
	{
		//document.getElementById("listing_style").checked = false;
		bus_listing_cityes(bf_obj);
	}
}

function bus_listing_cityes(bf_obj)
{
	for (var i=0; i<b_cities.length; i++)
	{
		var j = i+1;
		bf_obj.options[j] = new Option(b_cities[i], b_cities[i]);
	}
}

function bus_listing_states(bf_obj)
{
	var opg_arr = new Array();
	for (var opg in states )
	{
		opg_arr[opg] = document.createElement("optgroup");
		opg_arr[opg].label = states[opg];
	}
	for (var i=0; i<b_cities.length; i++)
	{
		var j = i+1;
		var o = document.createElement("option");
		var arr = b_cities[i].split(/,\s+/);
		o.value = b_cities[i];
		o.innerHTML = arr[0];
		var short_state = arr[1];
		if(opg_arr[short_state])
			opg_arr[short_state].appendChild(o);

	}
	for(var opg in opg_arr) {
		opg_arr[opg].label = states[opg];
		if(opg_arr[opg].hasChildNodes())
			bf_obj.appendChild(opg_arr[opg]);
	}
}

function change_r_date(d)
{
    if (document.bus_search)
    {
		if (document.bus_search.b_roundtrip.checked == false)
		{
			document.bus_search.return_date.value = '';
		}
		else
		{
			if (d == "")
			{
				d = "N/A";
			}
			var f_count = document.forms.length;
			for (var i=0; i<f_count; ++i)
			{
				if (document.forms[i].r_date)
				{
					document.forms[i].r_date.value = d;
				}
			}
		}
    }
}

function change_passengers(n)
{
    if (document.bus_search)
    {
        var f_count = document.forms.length;
        for (var i=0; i<f_count; ++i)
        {
            if (document.forms[i].vol)
            {
                document.forms[i].vol.value = n;
            }
        }
    }
}


function select_oneway(no_update)
{
	if (document.bus_search)
	{
		document.bus_search.return_date.value = '';
		conditional_update();
		var obj = document.getElementById("bs_from");		
		if (obj.value!=0)
		{	
			//alert('go');
			var arr=obj.value;
			var arr2=1;
			var obj = document.getElementById("bs_to");
			obj.options[0].text = "please wait..";
			obj.disabled=true;	
			JsHttpRequest.query('/include/core/getregion.php',{ids:arr,tp:arr2}, 
			function(result, errors) {fillregion(result);}, true);
			return false;
		}	
	}
}

function select_roundtrip(d)
{
	if (document.bus_search)
	{
		var rd_obj = document.bus_search.return_date;
		if (d == null)
		{
			d = document.bus_search.filter_date.value;
			var darray = d.split("-");
			var start_d = new Date(darray[0], darray[1]-1, darray[2]);
			var r_d = new Date(start_d.valueOf() + 259200000);
			var m = r_d.getMonth() + 1;
			if (m < 10)
			{
				m = "0" + m;
			}
			var dt = r_d.getDate();
			if (dt < 10)
			{
				dt = "0" + dt;
			}
			rd_obj.value = r_d.getFullYear() + '-' + m + '-' + dt;
		}
		conditional_update();
		
		var obj = document.getElementById("bs_from");		
		if (obj.value!=0)
		{	
			//alert('go');
			var arr=obj.value;
			var arr2=11;
			var obj = document.getElementById("bs_to");
			obj.options[0].text = "please wait..";
			obj.disabled=true;
			JsHttpRequest.query('/include/core/getregion.php',{ids:arr,tp:arr2}, 
			function(result, errors) {fillregion(result);}, true);
			return false;
		}	
	}
}

function enable_roundtrip()
{
        if (document.bus_search)
        {
                document.bus_search.b_roundtrip.checked = true;
                var t_obj = document.getElementById("timeList");
                if (t_obj && t_obj.innerHTML != "")
                {
                        t_obj.innerHTML = "";
                }
                br_cal.select(document.bus_search.return_date,'br_date','yyyy-MM-dd');
        }
}

function select_preset()
{
	if (document.bus_search && document.bus_search.sbus_from)
	{
		document.bus_search.sbus_from.disabled = true;
		document.bus_search.sbus_to.disabled = true;
		document.bus_search.bus_from.disabled = false;
		document.bus_search.bus_to.disabled = false;
	}
}

function select_search()
{
    if (document.bus_search && document.bus_search.sbus_from)
    {
		document.bus_search.sbus_from.disabled = false;
		document.bus_search.sbus_to.disabled = false;
		document.bus_search.bus_from.disabled = true;
		document.bus_search.bus_to.disabled = true;
	}
}
///////////////////////////// list by states //////////

function list_by_states(f) {

	var bt_obj = get_bus_to_obj();
	var f_states = new Array();
	var opg_arr = new Array();

	for (var i=0; i<g_bus[f].length; i++)
	{

		var citys_arr = g_bus[f][i].split(/,\s+/);
		citys_arr.push(g_bus[f][i]);
		opg_arr.push(citys_arr);
		if( f_states.toString().indexOf(citys_arr[1])<0 ){

			f_states.push(citys_arr[1]);
		}

	}

	var opg_obj = new Array();

	for(var st in states ) {

		if(f_states.toString().indexOf(st) > -1){


			var opt = document.createElement("optgroup");

			for(var j=0; j<opg_arr.length; j++) {

				var o = document.createElement("option");
				o.value = opg_arr[j][2];

				o.innerHTML = opg_arr[j][0];

				if(st == opg_arr[j][1]) {

					opt.label = states[st];

					opt.appendChild(o);
				}
			}
			opg_obj.push(opt);

		}
	}

	for(var opg in opg_obj) {

		if(opg_obj[opg].hasChildNodes())
			bt_obj.appendChild(opg_obj[opg]);

	}
}

//////////////////////////////////// list_by_cities
function list_by_cities(f) {

		var bt_obj = get_bus_to_obj();

	if (f)
		{

		for (var i=0; i<g_bus[f].length; i++)
		{
			var j = i+1;
        	bt_obj.options[j] = new Option(g_bus[f][i], g_bus[f][i]);
	}
	}

}

function update_bus_to(f)
{
	var bt_obj = get_bus_to_obj();

	while(bt_obj.hasChildNodes())
	{
		bt_obj.removeChild(bt_obj.lastChild);

	}
	var op = document.createElement("option");
	op.value = "";
	op.style.color = '#555555';
	op.innerHTML = "Arrival City";

	bt_obj.appendChild(op);
	if (f)
    {
		if(g_bus[f].length >10 && listing_style == 'states')
		{
			list_by_states(f);
		}
		else
		{
			list_by_cities(f);
        }
	}
	conditional_clear();
}

function get_bus_from_obj()
{
	return window.document.bus_search.bus_from;
}

function get_sbus_from_obj()
{
       	return window.document.bus_search.sbus_from;
}

function get_bus_to_obj()
{
	return window.document.bus_search.bus_to;
}

function get_sbus_to_obj()
{
	return window.document.bus_search.sbus_to;
}

function set_selected(obj, v)
{
    for (var i=0; i<obj.options.length; i++)
    {
        if (obj.options[i].value == v)
        {
            obj.options.selectedIndex = i;
            return i;
        }
    }
    return -1;
}

function update_bus_from_to(f, t)
{
    var bf_obj = get_bus_from_obj();
    var index = 0;
    var sbus_from = document.getElementById("sbus_from_id");
    var sbus_to = document.getElementById("sbus_to_id");
    if (f)
    {
		if (g_bus[f] instanceof Array )
		{
			index = set_selected(bf_obj, f);
			if (sbus_from != null)
			{
				sbus_from.value = bf_obj.options[index].value;
			}
		}
    }
    else
    {
		index = bf_obj.selectedIndex;
		if (index > 0)
		{
			f = bf_obj.options[index].value;
		}
    }
    if (t)
    {
		if (g_bus[f] instanceof Array)
		{
			update_bus_to(f);
			var bt_obj = get_bus_to_obj();
			index = set_selected(bt_obj, t);
			if (index > -1 &&  sbus_to != null)
			{
				sbus_to.value = bt_obj.options[index].value;
			}
    	}
    }
    else if (index > 0)
    {
       	update_bus_to(f);
    }
    return 0;
}

function jump_or_clear()
{
    var bf_obj = get_bus_from_obj();
    var bt_obj = get_bus_to_obj();
    var fv = bf_obj.options[bf_obj.selectedIndex].value;
    var tv = bt_obj.options[bt_obj.selectedIndex].value;
    if (tv == "Yosemite, CA")
    {
        if (fv == "San Francisco, CA")
        {
                return ga("http://www.gotobus.com/cs/c266/yosemitetransportation/index.html");
        }
    }
    if (tv == "Turning Stone Casino, NY")
    {
        if (fv == "Albany, NY")
        {
            return ga("http://www.gotobus.com/cs/c1259/albanytoturningstonecasino/");
        }

    }
    if (tv == "Mohegan Sun Casino, CT")
    {
        if (fv == "Boston, MA")
        {
            return ga("http://www.gotobus.com/sunshine/boston_mohegansuntour/");
        }
    }
    else if (tv == "Atlantic City, NJ")
    {
        if (fv == "Newark, DE" || fv == "Wilmington, DE" || fv == "New Castle, DE")
        {
            return ga("http://www.gotobus.com/creativetravel/");
        }
        if (fv == "Washington, DC" || fv == "Fairfax, VA" || fv == "Springfield, VA" || fv == "Wheaton, MD")
        {
            return ga("http://www.gotobus.com/rexbus/daytriptotajmahalatlanticcity/");
        }
    }
    else if (tv == "Reno, NV")
    {
        if (fv == "San Francisco, CA")
        {
            return ga("http://www.gotobus.com/usasia/sanfrancisco___reno/");
        }
    }
    else if (fv == "San Diego, CA")
    {
        if (tv == "Viejas Casino, CA" || tv == "Sycuan Casino, CA")
        {
            return ga("http://www.gotobus.com/sunfuntours/");
        }
    }
    else if (tv == "Foxwoods Casino, CT")
    {
		return ga("http://www.gotobus.com/shortline/citytour/foxwoodsresortandcasino1_daytour.html");
    }
    else if (tv == "Philadelphia Park Casino, PA" || tv == "Philly Park Casino, PA")    {
        return ga("http://www.gotobus.com/skybus/philadelphiaparkcasinotour/");
    }
    conditional_clear();
}

function conditional_clear()
{
	var t_obj = document.getElementById("timeList");
	if (t_obj)
	{
	    t_obj.innerHTML = "";
	}
}

function get_departure_date()
{
	return document.bus_search.filter_date;
}

function get_return_date()
{
	return document.bus_search.return_date;
}

function check_bus_data()
{
	if (document.bus_search.option.value == "Select")
	{
		if (document.bus_search.bus_from.value == "")
		{
			alert("Please select a valid Departure City!");
			document.bus_search.bus_from.focus();
			return false;
		}
		if (document.bus_search.bus_to.value == "")
		{
			alert("Please select a valid Arrival City!");
			document.bus_search.bus_to.focus();
			return false;
		}
	}
	else if (document.bus_search.option.value == "Search")
	{
		if (document.bus_search.sbus_from.value == "")
		{
			alert("Please enter a valid Departure City!");
			document.bus_search.sbus_from.focus();
			return false;
		}
		if (document.bus_search.sbus_to.value == "")
		{
			document.bus_search.sbus_to.focus();
			alert("Please enter a valid Arrival City!");
			return false;
		}
	}
    if (document.bus_search.filter_date.value == "")
    {
        alert("Please select a valid Departure Date!");
        document.bus_search.filter_date.focus();
        return false;
    }
    if (document.bus_search.b_roundtrip.checked == true && document.bus_search.return_date.value == "")
    {
        alert("Please select a valid Return Date!");
        document.bus_search.return_date.focus();
        return false;
    }
	return true;
}

function pickdaterange()
{
    var dateObj = document.getElementById("beforethisdate");
    var dateFilter = dateObj.options[dateObj.selectedIndex].value;
    if (document.bus_search && document.bus_search.filter_date)
    {
        document.bus_search.filter_date.value = dateFilter;
    }
    server_update();
    window.document.getElementById("beforethisdate").focus();
}

function conditional_update()
{
	var t_obj = document.getElementById("timeList");
	if (t_obj && t_obj.innerHTML != "")
	{
		server_update();
	}
}

function server_update()
{
	var from;
	var to;
	var vfrom;
	var vto;
	var vopt;
	if (document.bus_search.option && document.bus_search.option.value == "Hidden")
	{
		from = document.bus_search.bus_from.value;
		to   = document.bus_search.bus_to.value;
		vopt = "option=Hidden";
        vfrom = "&bus_from=";
        vto = "&bus_to=";
	}
	else if (document.bus_search.option.value == "Select")
	{
		var bus_from_obj = get_bus_from_obj();
		if (bus_from_obj && bus_from_obj.value != "")
		{
			from = bus_from_obj.value;
		}
		else
		{
			conditional_clear();
			return;
		}
   		var bus_to_obj = get_bus_to_obj();
		if (bus_to_obj && bus_to_obj.value)
		{
			to = bus_to_obj.value;
		}
		else
		{
			conditional_clear();
			return;
		}
        vfrom = "&bus_from=";
        vto = "&bus_to=";
        vopt = "option=Select";
	}
	else
	{
		from = document.bus_search.sbus_from.value;
		to   = document.bus_search.sbus_to.value;
        vfrom = "&sbus_from=";
        vto = "&sbus_to=";
        vopt = "option=Search";
	}
	var date_obj = window.document.bus_search.filter_date;
	var date = "";
	if (date_obj)
	{
		date = date_obj.value;
	}
	else
	{
		date_obj = window.document.getElementById("beforethisdate");
		if (date_obj)
		{
            date = date_obj.value;
		}
    }
	var op_url = "";
	var operator_obj = window.document.getElementById("operatorList");
	if (operator_obj)
	{
		op_url = "&operator=" + operator_obj.value;
	}
	var q_url = "";
	if (window.document.bus_search.quantity && window.document.bus_search.quantity.value > 1)
	{
		var quantity = window.document.bus_search.quantity.value;
		q_url = "&quantity=" + quantity;
	}
	var rt_url = "";
	var return_url = "";
	var roundtrip = -1;
	if (window.document.bus_search.roundtrip)
	{
	    if (document.bus_search.roundtrip[1].checked == true)
	    {
		roundtrip = 1;
	    }
	    else
	    {
	        roundtrip = 0;
	    }
        }
        if (document.bus_search.option && document.bus_search.option.value != "Hidden")
	{
            var return_obj = window.document.bus_search.return_date;
            if (return_obj)
            {
                var return_date = return_obj.value;
                return_url = "&return_date=" + return_date;
	    }
	    if (roundtrip < 0)
	    {
	       roundtrip = 1;
	    }
	}
	else
	{
	    roundtrip = 0;
	}
	rt_url = "&roundtrip=" + roundtrip;
        var nm_url = "";
        if (window.document.bus_search.nm && window.document.bus_search.nm.value != '')
        {
                var nm = window.document.bus_search.nm.value;
                nm_url = "&nm=" + nm;
        }
        var st_url = "";
        if (window.document.bus_search.st && window.document.bus_search.st.value != '')
        {
                var st = window.document.bus_search.st.value;
                st_url = "&st=" + st;
        }
    var selected_url = "&s_pid=" + document.getElementById("pid").value;
    if(document.getElementById("b_roundtrip").checked ==true)
    {

    	var pid_return_obj = document.getElementById("pid_return");
    	if (pid_return_obj != null)
    	{
    	 	selected_url = selected_url + "&s_return_pid=" + document.getElementById("pid_return").value;
    	}
    }
    ga("/cgi-bin/bus.cgi?" + vopt + vfrom + from + vto + to + "&filter_date=" + date + op_url + q_url + rt_url + return_url + nm_url + st_url+selected_url);
}

function assignOperator(operator)
{
    var operatorObj = window.document.getElementById("operatorList");
	for (var i=0; i<operatorObj.options.length; i++)
	{
		if (operatorObj.options[i].value == operator)
        {
	        operatorObj.options[i].selected = true;
		    operatorFilter = operator;
		}
		else
		{
			operatorObj.options[i].selected = false;
		}
	}
	server_update();
}

function reverse_from_to()
{
    var option_obj = document.bus_search.option;
    if (option_obj)
    {
		var to   = document.bus_search.bus_from.value;
		var from = document.bus_search.bus_to.value;
		if (from)
		{
			update_bus_from_to(from, to);
			conditional_clear();
		}
	}
}

function copy_select_to_search()
{
    var f_obj = document.bus_search.bus_from;
    var t_obj = document.bus_search.bus_to;
    var sf_obj = document.bus_search.sbus_from;
    var st_obj = document.bus_search.sbus_to;
    if (t_obj.selectedIndex > 0)
    {
        st_obj.value = t_obj.options[t_obj.selectedIndex].value;
    }
    else
    {
    	st_obj.value = "Arrival City";
    }

    if (f_obj.selectedIndex > 0)
    {
        sf_obj.value = f_obj.options[f_obj.selectedIndex].value;
    }
    else
    {
    	sf_obj.value = "Departure City";
    }
}

function copy_search_to_select()
{
    var sf_obj = document.bus_search.sbus_from;
    var st_obj = document.bus_search.sbus_to;
    update_bus_from_to(sf_obj.value, st_obj.value);
}

function bus_where_switch()
{
    var option_obj = document.bus_search.option;
    if (option_obj)
    {
        conditional_clear();
        var select = document.getElementById("select_where");
        var search = document.getElementById("search_where");
        if (option_obj.value == "Select")
        {
            option_obj.value = "Search";
	    if (select && search)
            {
                select.className = "ivyDivHidden";
                search.className = "ivyDivShow";
            }
            copy_select_to_search();
            document.getElementById("bus_choice_switch").innerHTML = "Switch to Select";
        }
        else
        {
            option_obj.value = "Select";
            if (select && search)
            {
                select.className = "ivyDivShow";
                search.className = "ivyDivHidden";
            }
            copy_search_to_select();
            document.getElementById("bus_choice_switch").innerHTML = "Switch to Text";
        }
    }
}

function bus_departure_date_clicked(y,m,d)
{
	if (m < 10) m = '0' + m;
	if (d < 10) d = '0' + d;
	document.bus_search.filter_date.value = y + '-' + m + '-' + d;
	conditional_update();
}

function bus_return_date_clicked(y,m,d)
{
        if (m < 10) m = '0' + m;
        if (d < 10) d = '0' + d;
        document.bus_search.return_date.value = y + '-' + m + '-' + d;
        conditional_update();
}

function validate_form_selections(f)
{
    for (var i=0, j=f.elements.length; i<j; i++)
    {
        var t = f.elements[i].type;
        if (t.match(/select/))
		{
		    if (f.elements[i].value == '')
			{
				alert("Please Select " + f.elements[i].name + "!");
                f.elements[i].focus();
				return false;
			}
        }
    }
    if (f.Date != null && f.Date.value == '')
    {
        alert("Please select a valid Date!");
        return false;
    }
    if (f.time != null && f.time.value < 1.01)
    {
        return confirm("Important: It is a new date after passing 12:00am.\nYou have selected a very early schedule on " + f.Date.value + ".  Please confirm.");
    }
}

function check_oneway_image()
{
	if (document.getElementById('b_oneway').checked == true)
	{
		rd_popup.showPopup('r_text_date');
	}
	else
	{
		br_cal.select(document.bus_search.return_date,'br_date','yyyy-MM-dd');
	}
}

function check_oneway_text()
{
	if (document.getElementById('b_oneway').checked == true)
	{
		rd_popup.showPopup('r_text_date');
	}
}


function select_operator(operator)
{
	var old_index = document.getElementById("operatorList").selectedIndex;
	if (document.getElementById("b_roundtrip").checked)
	{
		select_operator_change(operator)
		if (document.getElementById("operatorList").selectedIndex != old_index)
		{
			server_update();
		}
	}
}

function select_operator_change(operator)
{
	var obj_operatorlist = document.getElementById("operatorList");
	for(var i=0;i<obj_operatorlist.length-1;i++)
	{
		if (obj_operatorlist.options[i].value == operator)
		{
			obj_operatorlist.selectedIndex =i;
			if(operator == "")
			{
				document.getElementById("pid").value = "";
			}
		}
	}
	if (document.getElementById("b_roundtrip").checked)
	{
		var obj_operatorlist_return = document.getElementById("operatorList_return");
		if (obj_operatorlist_return !=null)
		{
			for(var j=0;j<obj_operatorlist_return.length-1;j++)
			{
				if (obj_operatorlist_return.options[j].value == operator)
				{
					obj_operatorlist_return.selectedIndex =j;
					if(operator == "")
					{
						document.getElementById("pid_return").value = "";
					}
				}
			}
		}
	}
}


function set_hidden_value(return_spec,pid)
{
	document.getElementById("Date" + return_spec).value = document.getElementById('date'+pid).value;
	var time = document.getElementById("time"+ pid).value;
	var operator = document.getElementById("operator" + pid).value;
	var obj_pid = document.getElementById("pid" + return_spec);
	var obj_time =document.getElementById("time" + return_spec);

	var discount_obj = document.getElementById("Discount" + return_spec);
	var depart_obj = document.getElementById("Departure_form" + return_spec);
	var current_vol_obj = document.getElementById("vol" + return_spec + pid);
	var arrival_obj = document.getElementById("Arrival_form" + return_spec);
	var vol_obj = document.getElementById("vol" + return_spec);

	var departure_value;
	var discount_value;
	var arrival_value;
	var dd_arrival_value;
	var dd_departure_value;
	var has_operator;

	var arrival_pid_obj = document.getElementById('Arrival' + return_spec + pid);
	var departure_pid_obj = document.getElementById('Departure' + return_spec + pid);
	var discount_pid_obj = document.getElementById('Discount' + return_spec + pid);
	var operatorList_obj = document.getElementById("operatorList"  + return_spec);
	var dd_arrival_obj = document.getElementById("dd" + pid + "_Arrival");
	var dd_depart_obj = document.getElementById("dd" + pid + "_Departure");
        var st_obj = document.getElementById("st");

	if (arrival_pid_obj != null  )
	{
		arrival_value = arrival_pid_obj.value;
	}

	if (departure_pid_obj != null  )
	{
		departure_value = departure_pid_obj.value;
	}

	if (discount_pid_obj != null  )
	{
		discount_value = discount_pid_obj.value;
	}

	if (operatorList_obj != null && st_obj.value < 1)
	{
		has_operator = "true";
	}

	if (dd_arrival_obj != null  )
	{
		dd_arrival_value = dd_arrival_obj.value;
	}

	if (dd_depart_obj != null  )
	{
		dd_departure_value = dd_depart_obj.value;
	}

	depart_obj.value = departure_value;
	discount_obj.value = discount_value;
	arrival_obj.value = arrival_value;
	if (dd_arrival_value)
	{
		arrival_obj.value = dd_arrival_value ;
	}
	if(dd_departure_value)
	{
		depart_obj.value = dd_departure_value;
	}
	obj_pid.value = pid;
	obj_time.value = time;
	vol_obj.value = current_vol_obj.value;
 	if ( has_operator )
	{
		select_operator(operator);
	}
}

function obj_value_change(value,current_pid,return_spec,operator)
{
	var pid_obj = document.getElementById("pid"+return_spec);
	var selected_pid = pid_obj.value;
	if (selected_pid =="" || current_pid != selected_pid)
	{
		document.getElementById("radselect" + return_spec + current_pid).checked =true;
		pid_obj.value = current_pid;
		var operatorList_obj = document.getElementById("operatorList"  + return_spec);
		if (operatorList_obj !=null)
		{
			select_operator(operator);
		}
	}
	set_hidden_value(return_spec,current_pid)
}


function validate_form()
{
	var pid = document.getElementById("pid").value;

	if(pid=="")
	{
		alert("Please select a departure schedule.");
		return false;
	}
	var depart_obj = document.getElementById('Departure_form');
	if (depart_obj.value =="")
	{
		alert("Please select Departure of departure schedule.");
		document.getElementById('Departure' + pid).focus();
		return false;
	}
	var arrival_obj = document.getElementById('Arrival' + pid);
	var departure_obj = document.getElementById('Departure' + pid);
	var discount_obj = document.getElementById('Discount' + pid);
	var ddl_arrival_obj = document.getElementById('dd' + pid + '_Arrival');
	var ddl_departure_obj = document.getElementById('dd' + pid + '_Departure');



	if (departure_obj != null  )
	{
		if (departure_obj.value =='')
		{
			alert("Please Select Departure of departure schedule!");
        	departure_obj.focus();
			return false;
		}
	}

	if (ddl_departure_obj != null)
	{
		if (ddl_departure_obj.value =='')
		{
			alert("Please Select Departure of departure schedule!");
        	ddl_departure_obj.focus();
			return false;
		}
		else
		{
			document.getElementById("Departure_form").value = ddl_departure_obj.value;
		}
	}

	if (arrival_obj != null  )
	{
		if ( arrival_obj.value =='' )
		{
			alert("Please Select Arrival of departure schedule!");
        	arrival_obj.focus();
			return false;
		}
	}

	if (ddl_arrival_obj != null)
	{
		if(ddl_arrival_obj.value =='')
		{
			alert("Please Select Arrival of departure schedule!");
        	ddl_arrival_obj.focus();
			return false;
		}
		else
		{
			document.getElementById("Arrival_form").value = ddl_arrival_obj.value;
		}
	}



	if (discount_obj != null)
	{
		if(discount_obj.value =='')
		{
			alert("Please Select Discount of departure schedule!");
        	discount_obj.focus();
			return false;
		}
	}

	if (document.getElementById("b_roundtrip").checked ==true)
	{
		var pid = document.getElementById("pid_return").value;
		if(document.getElementById("frmsearch").pid_return.value=="")
		{
			alert("Please select a return schedule.");
			return false;
		}
		var depart_obj_return = document.getElementById('Departure_form_return');
		if (depart_obj_return.value =="")
		{
			alert("Please select Departure of return schedule.");
			document.getElementById('Departure_return' + pid).focus();
			return false;
		}

		var arrival_return_obj = document.getElementById('Arrival_return' + pid);
		var departure_return_obj = document.getElementById('Departure_return' + pid);
		var discount_return_obj = document.getElementById('Discount_return' + pid);
		var ddl_arrival_return_obj = document.getElementById('dd' + pid + '_Arrival');
		var ddl_departure_return_obj = document.getElementById('dd' + pid + '_Departure');


		if (departure_return_obj != null  )
		{
			if (departure_return_obj.value =='')
			{
				alert("Please Select Departure of return schedule!");
	        	departure_return_obj.focus();
				return false;
			}
		}

		if (ddl_departure_return_obj != null)
		{
			if (ddl_departure_return_obj.value =='')
			{
				alert("Please Select Reparture of return schedule!");
	        	ddl_departure_return_obj.focus();
				return false;
			}
			else
			{
				document.getElementById("Departure_form_return").value = ddl_departure_return_obj.value;
			}
		}

		if (arrival_return_obj != null  )
		{
			if ( arrival_return_obj.value =='' )
			{
				alert("Please Select Arrival of return schedule!");
	        	arrival_return_obj.focus();
				return false;
			}
		}


		if (ddl_arrival_return_obj != null)
		{
			if(ddl_arrival_return_obj.value =='')
			{
				alert("Please Select Arrival of return schedule!");
	        	ddl_arrival_return_obj.focus();
				return false;
			}
			else
			{
				document.getElementById("Arrival_form_return").value = ddl_arrival_return_obj.value;
			}
		}


		if (discount_return_obj != null)
		{
			if(discount_return_obj.value =='')
			{
				alert("Please Select Discount of return schedule!");
	        	discount_return_obj.focus();
				return false;
			}
		}


	}
	return true;
}

function form_submit()
{
	if (validate_form())
	{
		document.getElementById("frmsearch").submit();
	}
	else
	{
		return false;
	}
}

function pickdaterange_return()
{
    var dateObj = document.getElementById("beforethisdate_return");
    var dateFilter = dateObj.options[dateObj.selectedIndex].value;
    if (document.bus_search && document.bus_search.return_date)
    {
        document.bus_search.return_date.value = dateFilter;
    }
    server_update();
    window.document.getElementById("beforethisdate_return").focus();
}

function get_dynamic_price(pid,service_date,quick)
{
	document.getElementById("dynamic_price" + pid).innerHTML = "<font color='red'>Pricing..</font>";
	if(window.XMLHttpRequest) {
		dynamic_xml = new XMLHttpRequest();
	} else {
		dynamic_xml = new ActiveXObject("MSXML2.XMLHTTP");
	}
	var url = '/cgi-bin/ajax.cgi?type=dynamic_price&pid=' + pid + '&service_date=' + service_date + '&quick=' + quick;
	dynamic_xml.open("GET", url, true);
	dynamic_xml.onreadystatechange = function() {response_dynamic_price(pid);}
	dynamic_xml.setRequestHeader("If-Modified-Since","0");
	dynamic_xml.send("");
}

function response_dynamic_price(pid)
{
	if (dynamic_xml.readyState == 4)
	{
		var response = dynamic_xml.responseText;
		document.getElementById("dynamic_price" + pid).innerHTML = response;
	}
}

function dynamic_image(pid)
{
	var dynamic_image_html = document.getElementById("dynamic_price_hidden" + pid).innerHTML;
	document.getElementById("dynamic_price" + pid).innerHTML = dynamic_image_html;

}

function show_dynamic(pid)
{
	if (document.getElementById("return_flag" + pid ).value =="return")
	{
		get_dynamic_price(pid,document.getElementById('beforethisdate_return').value,1);
	}
	else
	{
		get_dynamic_price(pid,document.getElementById('beforethisdate').value,1);
	}
	setTimeout("dynamic_image('" + pid + "')",20000);
}

function show_dynamic_prices(pids, service_date, return_pids, return_date)
{
	if(window.XMLHttpRequest) {
		dynamic_xml_all = new XMLHttpRequest();
	} else {
		dynamic_xml_all = new ActiveXObject("MSXML2.XMLHTTP");
	}
	var url = '/cgi-bin/get_ajax_content.cgi?type=dynamic_prices&pids=' + pids + '&service_date=' + service_date + '&return_pids=' + return_pids + '&return_date=' + return_date;
	dynamic_xml_all.open("GET", url, true);
	dynamic_xml_all.onreadystatechange = function() {response_dynamic_prices(pids, return_pids);}
	dynamic_xml_all.setRequestHeader("If-Modified-Since","0");
	dynamic_xml_all.send("");
}

function response_dynamic_prices(pids, return_pids)
{
	if (dynamic_xml_all.readyState == 4)
	{
		var response = dynamic_xml_all.responseText;
		var arr_response = response.split("|");
		var index = 0;
		if (pids != '')
		{
			var pids_array = pids.split("|");
			for(i = 0; i < pids_array.length; i++)
			{
				document.getElementById("dynamic_price" + pids_array[i]).innerHTML = arr_response[i];
				index++;
			}
		}
		if (return_pids != '')
		{
			var return_pids_array = return_pids.split("|");
			for(i = 0; i < return_pids_array.length; i++)
			{
				document.getElementById("dynamic_price" + return_pids_array[i]).innerHTML = arr_response[i+index];
			}
		}
	}
}

//-->
