	function sCS_updateCountry (val)
	{
		var countryDropDown = document.course_enroll.school_country;

		var provinceAbbrList = "AB,BC,MB,NB,NF,NT,NS,NU,ON,PE,QB,SK,YU";

		var stateAbbrList = "AL,AK,AZ,AR,AA,AE,AP,CA,CO,CT,DE,FL,GA,HI,ID,IL,IN,IA,KS,KY,LA,ME,MD,MA,MI,MN,MS,MO,MT,NE,NV,NH,NJ,NM,NY,NC,ND,OH,OK,OR,PA,PR,RI,SC,SD,TN,TX,UT,VT,VI,VA,WA,DC,WV,WI,WY";

		if (provinceAbbrList.indexOf(val) != -1)
		{
			// set countryDropDown to Canada
			countryDropDown.options[2].selected = true;
		} 
		else if (stateAbbrList.indexOf(val) != -1)
		{
			countryDropDown.options[1].selected = true;
			// set countryDropDown to US
		}
	}

	function sCS_updateStateProvince (val)
	{

		var stateProvince = document.course_enroll.school_state;

		if(val=="")
		{
			// show all choices if Country is blank
			stateProvince.disabled = false;
			sCS_setStateProvinceList(stateProvince, "");
			return false;
		}
		else if (val == "US") 
		{
			stateProvince.disabled = false;
			sCS_setStateProvinceList(stateProvince, "States");
		}
		else if (val == "CAN" || val == "CA") 
		{
			stateProvince.disabled = false;
			sCS_setStateProvinceList(stateProvince, "Provinces");
		}
		else 
		{
			sCS_removeAll(stateProvince);
			stateProvince.options[0] = new Option("n/a", "n/a");
			stateProvince.disabled = true;
		}
	}

	function sCS_removeAll(stateProvince)
	{
		var i;
		for(i = stateProvince.options.length; i > 0; i--)
		{
			stateProvince.options[i] = null;
		}
	}

	function sCS_setStateProvinceList(stateProvince, spType)
	{
		// remove all options
		sCS_removeAll(stateProvince);

		// add elements of appropriate type.  if type is empty string, will add both states and provinces
		sCS_addElements(stateProvince, spType);
	}

	function sCS_addElements(stateProvince, spType)
	{

		var stateProvincesArray = new Array;

		if(spType == "Provinces")
		{
			stateProvincesArray = sCS_populateProvinces();
		}
		else if(spType == "States")
		{
			stateProvincesArray = sCS_populateStates();
		} else {
			stateProvincesArray = stateProvincesArray.concat(sCS_populateStates(), sCS_populateProvinces() );
			stateProvincesArray.sort();

		}

		var i;

		// reset first option to "Select" if it has been deleted
		stateProvince.options[0] = new Option("Select...", "") ;

		for(i = 1; i <= stateProvincesArray.length; i++)
		{
			stateProvince.options[i] = new Option(stateProvincesArray[i-1][0], stateProvincesArray[i-1][1]);
		}
	}

	function sCS_populateProvinces()
	{
		var provincesArray = new Array;
			provincesArray.push(new Array("Alberta", "AB"));
			provincesArray.push(new Array("British Columbia", "BC"));
			provincesArray.push(new Array("Manitoba", "MB"));
			provincesArray.push(new Array("New Brunswick", "NB"));
			provincesArray.push(new Array("Newfoundland", "NF"));
			provincesArray.push(new Array("North West Territory", "NT"));
			provincesArray.push(new Array("Nova Scotia", "NS"));
			provincesArray.push(new Array("Nunavut", "NU"));
			provincesArray.push(new Array("Ontario", "ON"));
			provincesArray.push(new Array("Prince Edward Island", "PE"));
			provincesArray.push(new Array("Quebec", "QB"));
			provincesArray.push(new Array("Saskatchewan", "SK"));
			provincesArray.push(new Array("Yukon", "YU"));

		return provincesArray;
	}

	function sCS_populateStates()
	{
		var statesArray = new Array;

			statesArray.push(new Array("Alabama", "AL"));
			statesArray.push(new Array("Alaska", "AK"));
			statesArray.push(new Array("Arizona", "AZ"));
			statesArray.push(new Array("Arkansas", "AR"));
			statesArray.push(new Array("Armed Forces (AA)", "AA"));
			statesArray.push(new Array("Armed Forces (AE)", "AE"));
			statesArray.push(new Array("Armed Forces (AP)", "AP"));
			statesArray.push(new Array("California", "CA"));
			statesArray.push(new Array("Colorado", "CO"));
			statesArray.push(new Array("Connecticut", "CT"));
			statesArray.push(new Array("Delaware", "DE"));
			statesArray.push(new Array("Florida", "FL"));
			statesArray.push(new Array("Georgia", "GA"));
			statesArray.push(new Array("Hawaii", "HI"));
			statesArray.push(new Array("Idaho", "ID"));
			statesArray.push(new Array("Illinois", "IL"));
			statesArray.push(new Array("Indiana", "IN"));
			statesArray.push(new Array("Iowa", "IA"));
			statesArray.push(new Array("Kansas", "KS"));
			statesArray.push(new Array("Kentucky", "KY"));
			statesArray.push(new Array("Louisiana", "LA"));
			statesArray.push(new Array("Maine", "ME"));
			statesArray.push(new Array("Maryland", "MD"));
			statesArray.push(new Array("Massachusetts", "MA"));
			statesArray.push(new Array("Michigan", "MI"));
			statesArray.push(new Array("Minnesota", "MN"));
			statesArray.push(new Array("Mississippi", "MS"));
			statesArray.push(new Array("Missouri", "MO"));
			statesArray.push(new Array("Montana", "MT"));
			statesArray.push(new Array("Nebraska", "NE"));
			statesArray.push(new Array("Nevada", "NV"));
			statesArray.push(new Array("New Hampshire", "NH"));
			statesArray.push(new Array("New Jersey", "NJ"));
			statesArray.push(new Array("New Mexico", "NM"));
			statesArray.push(new Array("New York", "NY"));
			statesArray.push(new Array("North Carolina", "NC"));
			statesArray.push(new Array("North Dakota", "ND"));
			statesArray.push(new Array("Ohio", "OH"));
			statesArray.push(new Array("Oklahoma", "OK"));
			statesArray.push(new Array("Oregon", "OR"));
			statesArray.push(new Array("Pennsylvania", "PA"));
			statesArray.push(new Array("Puerto Rico", "PR"));
			statesArray.push(new Array("Rhode Island", "RI"));
			statesArray.push(new Array("South Carolina", "SC"));
			statesArray.push(new Array("South Dakota", "SD"));
			statesArray.push(new Array("Tennessee", "TN"));
			statesArray.push(new Array("Texas", "TX"));
			statesArray.push(new Array("Utah", "UT"));
			statesArray.push(new Array("Vermont", "VT"));
			statesArray.push(new Array("Virgin Islands (US)", "VI"));
			statesArray.push(new Array("Virginia", "VA"));
			statesArray.push(new Array("Washington", "WA"));
			statesArray.push(new Array("Washington D.C.", "DC"));
			statesArray.push(new Array("West Virginia", "WV"));
			statesArray.push(new Array("Wisconsin", "WI"));
			statesArray.push(new Array("Wyoming", "WY"));

		return statesArray;
	}
