
var locTimeZones = [
	{ code: "-12", label: "(GMT -12:00 hours) Eniwetok, Kwajalein" },
	{ code: "-11", label: "(GMT -11:00 hours) Midway Island, Samoa" },
	{ code: "-10", label: "(GMT -10:00 hours) Hawaii" },
	{ code: "-9", label: "(GMT -9:00 hours) Alaska" },
	{ code: "-8", label: "(GMT -8:00 hours) Pacific Time (US & Canada)" },
	{ code: "-7", label: "(GMT -7:00 hours) Mountain Time (US & Canada)" },
	{ code: "-6", label: "(GMT -6:00 hours) Central Time (US & Canada), Mexico City" },
	{ code: "-5", label: "(GMT -5:00 hours) Eastern Time (US & Canada), Bogota, Lima, Quito" },
	{ code: "-4", label: "(GMT -4:00 hours) Atlantic Time (Canada), Caracas, La Paz" },
	{ code: "-3.5", label: "(GMT -3:30 hours) Newfoundland" },
	{ code: "-3", label: "(GMT -3:00 hours) Brazil, Buenos Aires, Georgetown" },
	{ code: "-2", label: "(GMT -2:00 hours) Mid-Atlantic" },
	{ code: "-1", label: "(GMT -1:00 hours) Azores, Cape Verde Islands" },
	{ code: "0", label: "(GMT) Western Europe Time, London, Lisbon, Casablanca, Monrovia" },
	{ code: "+1", label: "(GMT +1:00 hours) CET(Central Europe Time), Brussels, Copenhagen, Madrid, Paris" },
	{ code: "+2", label: "(GMT +2:00 hours) EET(Eastern Europe Time), Kaliningrad, South Africa" },
	{ code: "+3", label: "(GMT +3:00 hours) Baghdad, Kuwait, Riyadh, Moscow, St. Petersburg, Volgograd, Nairobi" },
	{ code: "+3.5", label: "(GMT +3:30 hours) Tehran" },
	{ code: "+4", label: "(GMT +4:00 hours) Abu Dhabi, Muscat, Baku, Tbilisi" },
	{ code: "+4.5", label: "(GMT +4:30 hours) Kabul" },
	{ code: "+5", label: "(GMT +5:00 hours) Ekaterinburg, Islamabad, Karachi, Tashkent" },
	{ code: "+5.5", label: "(GMT +5:30 hours) Bombay, Calcutta, Madras, New Delhi" },
	{ code: "+6", label: "(GMT +6:00 hours) Almaty, Dhaka, Colombo" },
	{ code: "+7", label: "(GMT +7:00 hours) Bangkok, Hanoi, Jakarta" },
	{ code: "+8", label: "(GMT +8:00 hours) Beijing, Perth, Singapore, Hong Kong, Chongqing, Urumqi, Taipei" },
	{ code: "+9", label: "(GMT +9:00 hours) Tokyo, Seoul, Osaka, Sapporo, Yakutsk" },
	{ code: "+9.5", label: "(GMT +9:30 hours) Adelaide, Darwin" },
	{ code: "+10", label: "(GMT +10:00 hours) EAST(East Australian Standard), Guam, Papua New Guinea, Vladivostok" },
	{ code: "+11", label: "(GMT +11:00 hours) Magadan, Solomon Islands, New Caledonia" },
	{ code: "+12", label: "(GMT +12:00 hours) Auckland, Wellington, Fiji, Kamchatka, Marshall Island" }
];

var locCountries = [
	{ code: "CA", label: "Canada" },
	{ code: "US", label: "United States of America" },
	{ code: "AF", label: "Afghanistan" },
	{ code: "AX", label: "\305land" },
	{ code: "AL", label: "Albania" },
	{ code: "DZ", label: "Algeria" },
	{ code: "AS", label: "American Samoa" },
	{ code: "AD", label: "Andorra" },
	{ code: "AO", label: "Angola" },
	{ code: "AI", label: "Anguilla" },
	{ code: "AQ", label: "Antarctica" },
	{ code: "AG", label: "Antigua and Barbuda" },
	{ code: "AR", label: "Argentina" },
	{ code: "AM", label: "Armenia" },
	{ code: "AW", label: "Aruba" },
	{ code: "AU", label: "Australia" },
	{ code: "AT", label: "Austria" },
	{ code: "AZ", label: "Azerbaijan" },
	{ code: "BS", label: "Bahamas" },
	{ code: "BH", label: "Bahrain" },
	{ code: "BD", label: "Bangladesh" },
	{ code: "BB", label: "Barbados" },
	{ code: "BY", label: "Belarus" },
	{ code: "BE", label: "Belgium" },
	{ code: "BZ", label: "Belize" },
	{ code: "BJ", label: "Benin" },
	{ code: "BM", label: "Bermuda" },
	{ code: "BT", label: "Bhutan" },
	{ code: "BO", label: "Bolivia" },
	{ code: "BA", label: "Bosnia and Herzegovina" },
	{ code: "BW", label: "Botswana" },
	{ code: "BV", label: "Bouvet Island" },
	{ code: "BR", label: "Brazil" },
	{ code: "IO", label: "British Indian Ocean Territory" },
	{ code: "BN", label: "Brunei Darussalam" },
	{ code: "BG", label: "Bulgaria" },
	{ code: "BF", label: "Burkina Faso" },
	{ code: "BI", label: "Burundi" },
	{ code: "KH", label: "Cambodia" },
	{ code: "CM", label: "Cameroon" },
	{ code: "CV", label: "Cape Verde" },
	{ code: "KY", label: "Cayman Islands" },
	{ code: "CF", label: "Central African Republic" },
	{ code: "TD", label: "Chad" },
	{ code: "CL", label: "Chile" },
	{ code: "CN", label: "China" },
	{ code: "CX", label: "Christmas Island" },
	{ code: "CC", label: "Cocos (Keeling) Islands" },
	{ code: "CO", label: "Colombia" },
	{ code: "KM", label: "Comoros" },
	{ code: "CG", label: "Congo (Brazzaville)" },
	{ code: "CD", label: "Congo (Kinshasa)" },
	{ code: "CK", label: "Cook Islands" },
	{ code: "CR", label: "Costa Rica" },
	{ code: "CI", label: "C\364te dIvoire" },
	{ code: "HR", label: "Croatia" },
	{ code: "CU", label: "Cuba" },
	{ code: "CY", label: "Cyprus" },
	{ code: "CZ", label: "Czech Republic" },
	{ code: "DK", label: "Denmark" },
	{ code: "DJ", label: "Djibouti" },
	{ code: "DM", label: "Dominica" },
	{ code: "DO", label: "Dominican Republic" },
	{ code: "EC", label: "Ecuador" },
	{ code: "EG", label: "Egypt" },
	{ code: "SV", label: "El Salvador" },
	{ code: "GQ", label: "Equatorial Guinea" },
	{ code: "ER", label: "Eritrea" },
	{ code: "EE", label: "Estonia" },
	{ code: "ET", label: "Ethiopia" },
	{ code: "FK", label: "Falkland Islands" },
	{ code: "FO", label: "Faroe Islands" },
	{ code: "FJ", label: "Fiji" },
	{ code: "FI", label: "Finland" },
	{ code: "FR", label: "France" },
	{ code: "GF", label: "French Guiana" },
	{ code: "PF", label: "French Polynesia" },
	{ code: "TF", label: "French Southern Lands" },
	{ code: "GA", label: "Gabon" },
	{ code: "GM", label: "Gambia" },
	{ code: "GE", label: "Georgia" },
	{ code: "DE", label: "Germany" },
	{ code: "GH", label: "Ghana" },
	{ code: "GI", label: "Gibraltar" },
	{ code: "GR", label: "Greece" },
	{ code: "GL", label: "Greenland" },
	{ code: "GD", label: "Grenada" },
	{ code: "GP", label: "Guadeloupe" },
	{ code: "GU", label: "Guam" },
	{ code: "GT", label: "Guatemala" },
	{ code: "GG", label: "Guernsey" },
	{ code: "GN", label: "Guinea" },
	{ code: "GW", label: "Guinea-Bissau" },
	{ code: "GY", label: "Guyana" },
	{ code: "HT", label: "Haiti" },
	{ code: "HM", label: "Heard and McDonald Islands" },
	{ code: "HN", label: "Honduras" },
	{ code: "HK", label: "Hong Kong" },
	{ code: "HU", label: "Hungary" },
	{ code: "IS", label: "Iceland" },
	{ code: "IN", label: "India" },
	{ code: "ID", label: "Indonesia" },
	{ code: "IR", label: "Iran" },
	{ code: "IQ", label: "Iraq" },
	{ code: "IE", label: "Ireland" },
	{ code: "IM", label: "Isle of Man" },
	{ code: "IL", label: "Israel" },
	{ code: "IT", label: "Italy" },
	{ code: "JM", label: "Jamaica" },
	{ code: "JP", label: "Japan" },
	{ code: "JE", label: "Jersey" },
	{ code: "JO", label: "Jordan" },
	{ code: "KZ", label: "Kazakhstan" },
	{ code: "KE", label: "Kenya" },
	{ code: "KI", label: "Kiribati" },
	{ code: "KP", label: "Korea ( North )" },
	{ code: "KR", label: "Korea ( South )" },
	{ code: "KW", label: "Kuwait" },
	{ code: "KG", label: "Kyrgyzstan" },
	{ code: "LA", label: "Laos" },
	{ code: "LV", label: "Latvia" },
	{ code: "LB", label: "Lebanon" },
	{ code: "LS", label: "Lesotho" },
	{ code: "LR", label: "Liberia" },
	{ code: "LY", label: "Libya" },
	{ code: "LI", label: "Liechtenstein" },
	{ code: "LT", label: "Lithuania" },
	{ code: "LU", label: "Luxembourg" },
	{ code: "MO", label: "Macau" },
	{ code: "MK", label: "Macedonia" },
	{ code: "MG", label: "Madagascar" },
	{ code: "MW", label: "Malawi" },
	{ code: "MY", label: "Malaysia" },
	{ code: "MV", label: "Maldives" },
	{ code: "ML", label: "Mali" },
	{ code: "MT", label: "Malta" },
	{ code: "MH", label: "Marshall Islands" },
	{ code: "MQ", label: "Martinique" },
	{ code: "MR", label: "Mauritania" },
	{ code: "MU", label: "Mauritius" },
	{ code: "YT", label: "Mayotte" },
	{ code: "MX", label: "Mexico" },
	{ code: "FM", label: "Micronesia" },
	{ code: "MD", label: "Moldova" },
	{ code: "MC", label: "Monaco" },
	{ code: "MN", label: "Mongolia" },
	{ code: "ME", label: "Montenegro" },
	{ code: "MS", label: "Montserrat" },
	{ code: "MA", label: "Morocco" },
	{ code: "MZ", label: "Mozambique" },
	{ code: "MM", label: "Myanmar" },
	{ code: "NA", label: "Namibia" },
	{ code: "NR", label: "Nauru" },
	{ code: "NP", label: "Nepal" },
	{ code: "NL", label: "Netherlands" },
	{ code: "AN", label: "Netherlands Antilles" },
	{ code: "NC", label: "New Caledonia" },
	{ code: "NZ", label: "New Zealand" },
	{ code: "NI", label: "Nicaragua" },
	{ code: "NE", label: "Niger" },
	{ code: "NG", label: "Nigeria" },
	{ code: "NU", label: "Niue" },
	{ code: "NF", label: "Norfolk Island" },
	{ code: "MP", label: "Northern Mariana Islands" },
	{ code: "NO", label: "Norway" },
	{ code: "OM", label: "Oman" },
	{ code: "PK", label: "Pakistan" },
	{ code: "PW", label: "Palau" },
	{ code: "PS", label: "Palestine" },
	{ code: "PA", label: "Panama" },
	{ code: "PG", label: "Papua New Guinea" },
	{ code: "PY", label: "Paraguay" },
	{ code: "PE", label: "Peru" },
	{ code: "PH", label: "Philippines" },
	{ code: "PN", label: "Pitcairn" },
	{ code: "PL", label: "Poland" },
	{ code: "PT", label: "Portugal" },
	{ code: "PR", label: "Puerto Rico" },
	{ code: "QA", label: "Qatar" },
	{ code: "RE", label: "Reunion" },
	{ code: "RO", label: "Romania" },
	{ code: "RU", label: "Russian Federation" },
	{ code: "RW", label: "Rwanda" },
	{ code: "BL", label: "Saint Barth\351lemy" },
	{ code: "SH", label: "Saint Helena" },
	{ code: "KN", label: "Saint Kitts and Nevis" },
	{ code: "LC", label: "Saint Lucia" },
	{ code: "MF", label: "Saint Martin (French part)" },
	{ code: "PM", label: "Saint Pierre and Miquelon" },
	{ code: "VC", label: "Saint Vincent and the Grenadines" },
	{ code: "WS", label: "Samoa" },
	{ code: "SM", label: "San Marino" },
	{ code: "ST", label: "Sao Tome and Principe" },
	{ code: "SA", label: "Saudi Arabia" },
	{ code: "SN", label: "Senegal" },
	{ code: "RS", label: "Serbia" },
	{ code: "SC", label: "Seychelles" },
	{ code: "SL", label: "Sierra Leone" },
	{ code: "SG", label: "Singapore" },
	{ code: "SK", label: "Slovakia" },
	{ code: "SI", label: "Slovenia" },
	{ code: "SB", label: "Solomon Islands" },
	{ code: "SO", label: "Somalia" },
	{ code: "ZA", label: "South Africa" },
	{ code: "GS", label: "South Georgia and South Sandwich Islands" },
	{ code: "KR", label: "South Korea" },
	{ code: "ES", label: "Spain" },
	{ code: "LK", label: "Sri Lanka" },
	{ code: "SD", label: "Sudan" },
	{ code: "SR", label: "Suriname" },
	{ code: "SJ", label: "Svalbard and Jan Mayen Islands" },
	{ code: "SZ", label: "Swaziland" },
	{ code: "SE", label: "Sweden" },
	{ code: "CH", label: "Switzerland" },
	{ code: "SY", label: "Syria" },
	{ code: "TW", label: "Taiwan" },
	{ code: "TJ", label: "Tajikistan" },
	{ code: "TZ", label: "Tanzania" },
	{ code: "TH", label: "Thailand" },
	{ code: "TL", label: "Timor-Leste" },
	{ code: "TG", label: "Togo" },
	{ code: "TK", label: "Tokelau" },
	{ code: "TO", label: "Tonga" },
	{ code: "TT", label: "Trinidad and Tobago" },
	{ code: "TN", label: "Tunisia" },
	{ code: "TR", label: "Turkey" },
	{ code: "TM", label: "Turkmenistan" },
	{ code: "TC", label: "Turks and Caicos Islands" },
	{ code: "TV", label: "Tuvalu" },
	{ code: "UG", label: "Uganda" },
	{ code: "UA", label: "Ukraine" },
	{ code: "AE", label: "United Arab Emirates" },
	{ code: "GB", label: "United Kingdom" },
	{ code: "UM", label: "United States Minor Outlying Islands" },
	{ code: "UY", label: "Uruguay" },
	{ code: "UZ", label: "Uzbekistan" },
	{ code: "VU", label: "Vanuatu" },
	{ code: "VA", label: "Vatican City" },
	{ code: "VE", label: "Venezuela" },
	{ code: "VN", label: "Vietnam" },
	{ code: "VG", label: "Virgin Islands ( British )" },
	{ code: "VI", label: "Virgin Islands ( U.S. )" },
	{ code: "WF", label: "Wallis and Futuna Islands" },
	{ code: "EH", label: "Western Sahara" },
	{ code: "YE", label: "Yemen" },
	{ code: "ZM", label: "Zambia" },
	{ code: "ZW", label: "Zimbabwe" }
];

var locStateProv = {
	US: [
		{ code: "AK", label: "AK-Alaska" },
		{ code: "AL", label: "AL-Alabama" },
		{ code: "AR", label: "AR-Arkansas" },
		{ code: "AZ", label: "AZ-Arizona" },
		{ code: "CA", label: "CA-California" },
		{ code: "CO", label: "CO-Colorado" },
		{ code: "CT", label: "CT-Connecticut" },
		{ code: "DC", label: "DC-District of Columbia" },
		{ code: "DE", label: "DE-Delaware" },
		{ code: "FL", label: "FL-Florida" },
		{ code: "GA", label: "GA-Georgia" },
		{ code: "HI", label: "HI-Hawaii" },
		{ code: "IA", label: "IA-Iowa" },
		{ code: "ID", label: "ID-Idaho" },
		{ code: "IL", label: "IL-Illinois" },
		{ code: "IN", label: "IN-Indiana" },
		{ code: "KS", label: "KS-Kansas" },
		{ code: "KY", label: "KY-Kentucky" },
		{ code: "LA", label: "LA-Louisiana" },
		{ code: "MA", label: "MA-Massachusetts" },
		{ code: "MD", label: "MD-Maryland" },
		{ code: "ME", label: "ME-Maine" },
		{ code: "MI", label: "MI-Michigan" },
		{ code: "MN", label: "MN-Minnesota" },
		{ code: "MO", label: "MO-Missouri" },
		{ code: "MS", label: "MS-Mississippi" },
		{ code: "MT", label: "MT-Montana" },
		{ code: "NC", label: "NC-North Carolina" },
		{ code: "ND", label: "ND-North Dakota" },
		{ code: "NE", label: "NE-Nebraska" },
		{ code: "NH", label: "NH-New Hampshire" },
		{ code: "NJ", label: "NJ-New Jersey" },
		{ code: "NM", label: "NM-New Mexico" },
		{ code: "NV", label: "NV-Nevada" },
		{ code: "NY", label: "NY-New York" },
		{ code: "OH", label: "OH-Ohio" },
		{ code: "OK", label: "OK-Oklahoma" },
		{ code: "OR", label: "OR-Oregon" },
		{ code: "PA", label: "PA-Pennsylvania" },
		{ code: "RI", label: "RI-Rhode Island" },
		{ code: "SC", label: "SC-South Carolina" },
		{ code: "SD", label: "SD-South Dakota" },
		{ code: "TN", label: "TN-Tennessee" },
		{ code: "TX", label: "TX-Texas" },
		{ code: "UT", label: "UT-Utah" },
		{ code: "VA", label: "VA-Virginia" },
		{ code: "VT", label: "VT-Vermont" },
		{ code: "WA", label: "WA-Washington" },
		{ code: "WI", label: "WI-Wisconsin" },
		{ code: "WV", label: "WV-West Virginia" },
		{ code: "WY", label: "WY-Wyoming" }
	],
	CA: [
		{ code: "AB", label: "AB-Alberta" },
		{ code: "BC", label: "BC-British Columbia" },
		{ code: "MB", label: "MB-Manitoba" },
		{ code: "NB", label: "NB-New Brunswick" },
		{ code: "NL", label: "NL-Newfoundland and Labrador" },
		{ code: "NT", label: "NT-Northwest Territories" },
		{ code: "NS", label: "NS-Nova Scotia" },
		{ code: "NU", label: "NU-Nunavut" },
		{ code: "ON", label: "ON-Ontario" },
		{ code: "PE", label: "PE-Prince Edward Island" },
		{ code: "QC", label: "QC-Quebec" },
		{ code: "SK", label: "SK-Saskatchewan" },
		{ code: "YT", label: "YT-Yukon" }
	]
};

function populateTimeZones(e) {
	var i;
	
	e.options.length = 0;
	
	for (i = 0; i < locTimeZones.length; i++)
		e.options[i] = new Option(locTimeZones[i].label, locTimeZones[i].code);
}

function populateCountries(e) {
	var i;
	
	e.options.length = 0;
	
	for (i = 0; i < locCountries.length; i++)
		e.options[i] = new Option(locCountries[i].label, locCountries[i].code);
}

function updateStateProv(eStateProv, eCountry) {
	var viewManager;
	var selCountry;
	var entity;
	var arr;
	var i;
	
	eStateProv.options.length = 0;
	if ((typeof gViewManager) == "undefined")
		viewManager = null;
	else
		viewManager = gViewManager;
	
	selCountry = eCountry.options[eCountry.selectedIndex].value;
	arr = locStateProv[selCountry];
	
	if (arr == null) {
		eStateProv.options[0] = new Option("--", eCountry.options[eCountry.selectedIndex].value);
	} else {
		for (i = 0; i < arr.length; i++)
			eStateProv.options[i] = new Option(arr[i].label, arr[i].code);
	}

	if (viewManager != null) {
		entity = viewManager.getEntityView();
		if (entity != null) {
			if (locStateProv[entity.country] != null) {
				viewManager.selectOption(eStateProv, entity.stateProv);
			}
		}
	}
}


