var add = false;
var show_additional = null;
var ptID = null;
var productID = null;
var dirty = new Array();

//Arrays that store information for dropdowns
var names = new Array();
var dropdowns = new Array();

function array_isElement(str)
{ 
	for (var i = 0; i < this.length; i++)
	{
		if (this[i] == str)
			return i;
	}
	
	return -1;
}

Array.prototype.isElement = array_isElement;

function predetermined()
{
	preStandard();
	checkAdditional();
	preQuick();
	zipDecoder();
}

function preStandard()
{
	if(geo1 != null)
	{
		var formObj = document.getElementById("advanced_search");
		for(var i=0; i < formObj.geo1.length; i++)
		{
			if(formObj.geo1[i].value == geo1)
			{
				formObj.geo1[i].checked = true;
				createGeo(geo1);
			}
		}
		
		if(geo1 == "zip")
		{
			if(zipcode != null)
			{
				var formObj = document.getElementById("zipcode");
				formObj.value = zipcode;
			}
			
			if(miles != null)
				selectDD(miles, "miles");
		}
		else if(geo1 == "city")
		{
			if(city != null)
			{
				var formObj = document.getElementById("city");
				formObj.value = city;
			}
			
			if(state != null)
				selectDD(state, "state");
		}
		else if(geo1 == "county")
		{
			if(county != null)
			{
				var formObj = document.getElementById("county");
				formObj.value = county;
			}
			
			if(state != null)
				selectDD(state, "state");
		}
	}
	else
	{
		var formObj = document.getElementById("advanced_search");
		for(var i=0; i < formObj.geo1.length; i++)
		{
			if(formObj.geo1[i].checked)
				createGeo(formObj.geo1[i].value);
		}
	}

	if(provider_category != null)
	{
		selectDD(provider_category, "provider_category");
		createIndex(provider_category);
		
		if(search_cat != null)
		{
			var scObj = document.getElementById(provider_category + "_provider_type");
			selectDD(search_cat,scObj.id);
			chooseProvType(scObj);
		}
		
		if(product != null)
		{
			var prodObj = document.getElementById(productID);
			selectDD(product,prodObj.id);
		}
	}
	else
	{
		var prov_cat = document.getElementById("provider_category")
		createIndex(prov_cat.value);
	}
}

function preQuick()
{
	if(cityQuick != null)
	{
		var formObj = document.getElementById("cityQuick");
		formObj.value = cityQuick;
	}

	if(stateQuick != null)
		selectDD(stateQuick, "stateQuick");
	
	if(provider_category_quick != null)
		selectDD(provider_category_quick,"provider_category_Quick");
	
	if(search_criteria_quick == null || search_criteria_quick == '')
	{
		search_criteria_quick = document.getElementById("medical_name_quick");
		lastName_quick = null;
		firstName_quick = null;
		grpName_quick = null;
	}
	
	if(search_criteria_quick != null)
		selectDD(search_criteria_quick,"medical_name_quick");

	if(search_criteria_quick != null && (search_criteria_quick.value == "medical_prov" || search_criteria_quick == "medical_prov"))
	{
		show("medical_name_input_div_quick","medical_name_search_section_quick");
		if(lastName_quick != null)
		{
			var formObj = document.getElementById("medical_individual_Quick");
			formObj.value = lastName_quick;
		}
	
		if(firstName_quick != null)
		{
			var formObj = document.getElementById("medical_individual_first_Quick");
			formObj.value = firstName_quick;
		}
	}
	else if(search_criteria_quick != null && (search_criteria_quick.value == "medical_grp" || search_criteria_quick == "medical_grp"))
	{
		show("medical_group_input_div_quick","medical_name_search_section_quick");
		if(grpName_quick != null)
		{
			var formObj = document.getElementById("medical_group_ipa_Quick");
			formObj.value = grpName_quick;	
		}
	}
}

function checkDefaultPlan()
{
	var tempObj;
	
	if(productID != null)
	{
		tempObj = document.getElementById(productID);
		
		if(tempObj.value != "")
		{
			checkAdditional();
		}		
	}
}

function createGeo(str)
{		
	if(str == "zip")
	{
		show("text_zip_div", "geo_type_label_section");
		show("input_zip_div", "geo_type_input_section");
		show("text_distance_div", "geo_attr_label_section");
		show("input_distance_div", "geo_attr_input_section");
	}
	else if(str == "city") 
	{
		show("text_city_div", "geo_type_label_section");
		show("input_city_div", "geo_type_input_section");
		show("text_state_div", "geo_attr_label_section");
		show("input_state_div", "geo_attr_input_section");
	}
	else if(str == "county")
	{
		show("text_county_div", "geo_type_label_section");
		show("input_county_div", "geo_type_input_section");
		show("text_state_div", "geo_attr_label_section");
		show("input_state_div", "geo_attr_input_section");
	}
	
	checkAdditional();
}

function createIndex(str)
{
	resetIndex();
	
	if(str == "")
		return;
		
	var myStr = "input_" + str + "_div";
	show(myStr, "provider_type_section");
	
	if(str == "medical" || str == "bh" || str == "hospitals" || str == "facilities")
	{
		show("input_medical_plans", "plans_section");
		productID = "medical_plans";
	}
	else if(str == "dental")
	{
		show("input_dental_plans", "plans_section");
		productID = "dental_plans";
	}
	else if(str == "pharmacy")
	{
		show("input_default_plans", "plans_section");
		productID = null;
	}
	
	checkDefaultPlan();
	checkAdditional();
}

function chooseProvType(obj)
{
	var pl = document.getElementById("plans_label");
	pl.style.display = "";
	
	if(obj.value == "")
	{
		show("input_default_plans", "plans_section");
		productID = null;
	}
	else if(obj.value == "ntp")
		location.href = "/docfind/cms/html/natural_therapy.html";
	else if(obj.value == "ioec" && langpref=="en")
		location.href = "/docfind/cms/html/institutes_of_excellence_pediatric.html";
	else if(obj.value == "ioec" && langpref=="sp")
		location.href = "/docfind/custom/sp/institutes_of_excellence_pediatric.html";
	else if(obj.value == "ioe" && langpref=="en")
		location.href = "/docfind/cms/html/institutes_of_excellence.html";
	else if(obj.value == "ioe" && langpref=="sp")
		location.href = "/docfind/custom/sp/institutes_of_excellence.html";
	else if(obj.value == "iccf" && langpref=="en")
		location.href = "/docfind/cms/html/institutes_of_excellence_cardiac.html";
	else if(obj.value == "iccf" && langpref=="sp")
		location.href = "/docfind/custom/sp/institutes_of_excellence_cardiac.html";
	else if(obj.value == "ba")
		location.href = "/docfind/cms/html/bariatric_facilities.html";
	else if(obj.value == "pspec" && langpref=="en")
		location.href = "/docfind/cms/html/specialty_pharmacy.html";
	else if(obj.value == "pspec" && langpref=="sp")
		location.href = "/docfind/custom/sp/specialty_pharmacy.html";
	else if(obj.value == "psmail" && langpref=="en")
		location.href = "/docfind/cms/html/mail_order_pharmacy.html";		
	else if(obj.value == "dmenat")
		location.href = "/docfind/cms/html/national_dme_providers.html";
	else if(obj.value == "neonatal_facilities")
		location.href = "/docfind/cms/html/neonatal_facilities.html";
	else if(obj.value == "dpcpm" && langpref=="en")
		location.href = "/docfind/cms/html/mexico_dental_network.html";
	else if(obj.value == "dpcpm" && langpref=="sp")
		location.href = "/docfind/custom/sp/mexico_dental_network.html";
	else if(obj.value=="vhp" && langpref=="en")
		location.href="/docfind/cms/html/mexico_medical_providers.html";
	else if(obj.value=="vhp" && langpref=="sp")
		location.href="/docfind/custom/sp/mexico_medical_providers.html";
	if(obj.value == "pharmacy")
	{
		show("input_pharmacy_plans", "plans_section");
		productID = "pharmacy_plans";
	}
	else if(obj.value == "hearing")
	{
		show("input_hearing_plans", "plans_section");
		productID = "hearing_plans";
	}
	else if(obj.value == "eyewear")
	{
		pl.style.display = "none";
		hide("plans_section");
		resetDD("pharmacy_plans");
	}
	
	show_additional = getAdditionalSection(obj.value);
	ptID = obj.id;
	checkDefaultPlan();
	checkAdditional();
}

function getAdditionalSection(str)
{
	if(str == "pcp" || str == "spec")
		return "medical";
	else if(str == "phys_bhp")
		return "phys_bhp";
	else if(str == "dpcp" || str == "dspec")
		return "dental";
	else if(str == "dall")
		return "dall";
	else if(str == "bhp")
		return "bhp";
	else if(str == "pharmacy")
		return "pharmacy";
	else if(str == "ac" || str == "dmeloc" || str == "urgent" || str == "walkin" || str == "eyewear")
		return "facilities";
	else if(str == "opp")
		return "opp";
	else if(str == "hospitals")
		return "hospitals";
	else if(str == "mh_facility" || str == "sa_facility" || str == "rtf_facility")
		return "bhh";
}

function checkAdditional()
{
	var additional = document.getElementById("additional");
	
	var geo1_filled = false;
	var search_cat_filled = false;
	var product_filled = false;
	
	var formObj = document.getElementById("advanced_search");
	for(var i=0; i < formObj.geo1.length; i++)
	{
		if(formObj.geo1[i].checked)
		{
			if(formObj.geo1[i].value == "zip")
			{
				var zipcode = document.getElementById("zipcode");
				var miles = document.getElementById("miles");

				if(zipcode.value != "" && miles.value != "")
					geo1_filled = true;
			}
			else if(formObj.geo1[i].value == "city")
			{
				var city = document.getElementById("city");
				var state = document.getElementById("state");
				
				if(city.value != "" && state.value != "")
					geo1_filled = true;
			}
			else if(formObj.geo1[i].value == "county")
			{
				var county = document.getElementById("county");
				var state = document.getElementById("state");
				
				if(county.value != "" && state.value != "")
					geo1_filled = true;
			}
		}
	}
	
	if(ptID != null)
	{			
		var tempObj = document.getElementById(ptID);
		
		if(tempObj.value != "" && tempObj.value != "hearing")
			search_cat_filled = true;
			
		if(tempObj.value == "eyewear")
			product_filled = true;
	}

	if(productID != null && product_filled == false)
	{	
		tempObj = document.getElementById(productID);
		
		if(tempObj != null && tempObj.value != "")
			product_filled = true;
	}

	if(geo1_filled == true && search_cat_filled == true && product_filled == true)
	{
	  if(additional.style.display != "none")
		{	
			additional.src = "/docfind/custom/medicare/assets/images/more_options_button.jpg";
			additional.style.display = "";
			additional.disabled = false;
		}
	}
	else
	{
		add = false;
		
		additional.src = "/docfind/custom/medicare/assets/images/complete_above_button.jpg";
		additional.style.display = "";
		additional.disabled = true;
	}
	
	showAdditional();
}

function clickedAdditional()
{
	var additional = document.getElementById("additional");
	
	if(add == false)
	{
		additional.style.display = "none";
		add = true;
	}
	else
	{
		additional.src = "/docfind/custom/medicare/assets/images/more_options_button.jpg";
		add = false;
	}
	
	showAdditional();
}

function showAdditional()
{

	if(add == false || show_additional == null)
	{
		hide("additional_section");
		
		return;
	}
	else
	{
		var myStr = show_additional + "_additional";

		if(show_additional == "medical" || show_additional == "phys_bhp" || show_additional == "bhp")
			resetDD(show_additional + "_name");

		populateDropdowns();
		show(myStr,"additional_section");
		
// Start of SR1201
		if(show_additional == "medical" || show_additional == "phys_bhp" || show_additional == "bhp"){
			var normaldivId=show_additional+"_name_normal_input_div";
			
			var sectionId=show_additional+"_namelabel_search_section";
			
			show(normaldivId,sectionId);	
		}
	}
}

function nameSearch(obj)
{
	if(obj.value == "medical_prov")
		show("medical_name_input_div","medical_name_search_section");
	else if(obj.value == "medical_grp")
		show("medical_group_input_div","medical_name_search_section");
	else if(obj.value == "bhp_prov")
		show("bhp_name_input_div","bhp_name_search_section");
	else if(obj.value == "bhp_grp")
		show("bhp_group_input_div","bhp_name_search_section");
	else if(obj.value == "phys_bhp_prov")
		show("phys_bhp_name_input_div","phys_bhp_name_search_section");
	else if(obj.value == "phys_bhp_grp")
		show("phys_bhp_group_input_div","phys_bhp_name_search_section");
	else if(obj.value == "")
		hide(obj.id + "_search_section");
}

function selectDD(option, dropdown)
{ 
	var dd = document.getElementById(dropdown);
	for(var i=0; i < dd.options.length; i++)
	{
		if(dd.options[i].value == option)
			dd.options[i].selected = true;
	}
}

function resetDD(dropdown)
{
	var dd = document.getElementById(dropdown);
	
	if(dd == null)
		return;
	
	if(dd.selectedIndex == -1)
		return;
	else
		dd.selectedIndex = 0;
	
	return;
}

function resetDDs(section)
{
	var node = document.getElementById(section);
	var dds = node.getElementsByTagName("select");
	
	for (var i = 0; i < dds.length; i++)
		dds[i].selectedIndex = 0;
	
	return;
}

function resetIndex()
{
	show_additional = null;
	ptID = null;
	var add = document.getElementById("additional");
	add = false;
	showAdditional();
	resetDDs("provider_type_section");
	var pl = document.getElementById("plans_label");
	pl.style.display = "";
	
	return;
}

function makeDirty(obj)
{
	var x = dirty.isElement(obj.id);
	
	if(x != -1)
	{
		if(obj.value == "")
			dirty[x] = "";
			
		return;
	}
	else
		dirty.push(obj.id);
}

function makeNameDirty(obj)
{
	var search_cat = document.getElementById(ptID);
	
	if(search_cat.value == "eyewear")
	{
		obj.id = "facilities_eyewear_name";
	}
	else
	{
		obj.id = "facilities_individual";
	}
	
	makeDirty(obj);
}

function cleanUpGeo(geo_obj)
{	
	if(geo_obj.value == "zip")
	{
		geo_if_1 = document.getElementById("zipcode");
		geo_if_1.name = "zipcode";
		geo_if_2 = document.getElementById("miles");
		geo_if_2.name = "miles";
		sortBy = document.getElementById("sortBy");
		sortBy.value = "dist";
	}
	else if(geo_obj.value == "city")
	{
		geo_if_1 = document.getElementById("city");
		geo_if_1.name = "city";
		geo_if_2 = document.getElementById("state");
		geo_if_2.name = "state";
	}
	else if(geo_obj.value == "county")
	{
		geo_if_1 = document.getElementById("county");
		geo_if_1.name = "county";
		geo_if_2 = document.getElementById("state");
		geo_if_2.name = "state";
	}
	
	return;
}

function StandardCleanUp()
{
	var tempObj = document.getElementById("advanced_search");
		
	for(var i=0; i < tempObj.geo1.length; i++)
	{
		if(tempObj.geo1[i].checked)
			cleanUpGeo(tempObj.geo1[i]);
	}

	if(ptID != null)
	{			
		tempObj = document.getElementById(ptID);
		tempObj.name = "search_cat";
	}

	if(productID != null)
	{	
		tempObj = document.getElementById(productID);
		tempObj.name = "product";
	}
		
	if(add == true)
	{
		for(var i = 0; i < dirty.length; i++)
		{
			var x = dirty[i].indexOf(show_additional);
			
			if(x != -1)
			{
				tempObj = document.getElementById(dirty[i]);
				
				if(tempObj != null)
					tempObj.name = dirty[i].substring(show_additional.length + 1);
			}
		}
	}
	
	var objTempProvCat = document.getElementById("provider_category");
	
	if(objTempProvCat != null && objTempProvCat.value == "hospitals")
		document.getElementById("flagHospFlow").value = "H";
	else
		document.getElementById("flagHospFlow").value = "M";
	
	return true;
}

function QuickCleanUp()
{	
	return true;
}

function limitSpecialties(select)
{
	var selected = 0;

	for(var i=0; i < select.options.length; i++)
	{
		if(select.options[i].selected)
			selected++;

		if(selected > 2)
			select.options[i].selected = false;
	}
	
	makeDirty(select);
}

function populateDropdowns()
{
	var search_cat = document.getElementById(ptID);
	
	if(search_cat.value == "pcp")
	{
		fillDropdown(search_cat.value, "pcp_prctc_cd", "medical_specialty_div");
		fillDropdown(search_cat.value, "language", "medical_language_div");
		fillHospitalAffiliation("medical_hospaffil_div");
	}
	else if(search_cat.value == "spec")
	{
		fillDropdown(search_cat.value, "spec_prctc_cd", "medical_specialty_div");
		fillDropdown(search_cat.value, "language", "medical_language_div");
		fillHospitalAffiliation("medical_hospaffil_div");
	}
	else if(search_cat.value == "phys_bhp")
	{
		fillDropdown(search_cat.value, "pcp_prctc_cd", "phys_bhp_pcp_div");
		fillDropdown(search_cat.value, "spec_prctc_cd", "phys_bhp_spec_div");
		fillDropdown(search_cat.value, "language", "phys_bhp_language_div");
		fillHospitalAffiliation("phys_bhp_hospaffil_div");
	}
	else if(search_cat.value == "bhp")
	{
		fillDropdown(search_cat.value, "spec_prctc_cd", "bhp_specialty_div");
		fillDropdown(search_cat.value, "language", "bhp_language_div");
		fillHospitalAffiliation("bhp_hospaffil_div");
	}
	else if(search_cat.value == "dpcp")
	{
		fillDropdown(search_cat.value, "pcp_prctc_cd", "dental_specialty_div");
		fillDropdown(search_cat.value, "language", "dental_language_div");
	}
	else if(search_cat.value == "dspec")
	{
		fillDropdown(search_cat.value, "spec_prctc_cd", "dental_specialty_div");
		fillDropdown(search_cat.value, "language", "dental_language_div");
	}
	else if(search_cat.value == "dall")
	{
		fillDropdown(search_cat.value, "pcp_prctc_cd", "dall_pcp_div");
		fillDropdown(search_cat.value, "spec_prctc_cd", "dall_spec_div");
		fillDropdown(search_cat.value, "language", "dall_language_div");
	}
	else if(search_cat.value == "opp")
	{
		fillDropdown(search_cat.value, "spec_prctc_cd", "opp_specialty_div");
	}
	else if(search_cat.value == "mh_facility" || search_cat.value == "sa_facility" || search_cat.value == "rtf_facility")
	{
		fillDropdown(search_cat.value, "level_care", "bhh_level_care_div");
		fillDropdown(search_cat.value, "age_range", "bhh_age_range_div");
		fillDropdown(search_cat.value, "type_service", "bhh_type_service_div");
	}
}

function getProductCode(product)
{
	var product_code = "";

	var x = product.indexOf("|");		
	if(x != -1)
	{
		product_code = product.substring(0, x);
	}
	
	return product_code.toUpperCase();
}

function getStoredDropdownName(product_code, search_cat, dropdown)
{	
	if(dropdown == "language")
		return dropdown;
	else
		return product_code + "-" + search_cat + "." + dropdown;
}

function fillDropdown(search_cat, dropdown, section)
{
	var dddiv = document.getElementById(section);
	
	var productObj = document.getElementById(productID);
	var product_code = getProductCode(productObj.value);
	
	var stored_dropdown = getStoredDropdownName(product_code, search_cat, dropdown);
	
	var x = names.isElement(stored_dropdown);
	
	if(x != -1)
	{
		dddiv.innerHTML = createDropdown(search_cat, dropdown, dropdowns[x]);
	}
	else
	{
		getDropdown(product_code, search_cat, dropdown, stored_dropdown);
		
		var last = dropdowns.length - 1;
		dddiv.innerHTML = createDropdown(search_cat, dropdown, dropdowns[last]);
	}
}

function createDropdown(search_cat, dropdown, dropdown_options)
{
	var temp = "";
	
	var dropdown_str = search_cat + "." + dropdown;

	if(dropdown_str == "pcp.pcp_prctc_cd")
	{
		temp += "<select class=\"form_dropdown\" id=\"medical_pcp_prctc_cd\" onchange=\"makeDirty(this)\")>" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "spec.spec_prctc_cd")
	{
		temp += "<select class=\"form_dropdown\" id=\"medical_spec_prctc_cd\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "phys_bhp.pcp_prctc_cd")
	{
		temp += "<select class=\"form_dropdown\" id=\"phys_bhp_pcp_prctc_cd\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "phys_bhp.spec_prctc_cd")
	{
		temp += "<select class=\"form_dropdown\" id=\"phys_bhp_spec_prctc_cd\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "bhp.spec_prctc_cd")
	{
		temp += "<select class=\"form_dropdown\" id=\"bhp_spec_prctc_cd\" size=\"5\" multiple  onchange=\"limitSpecialties(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "dpcp.pcp_prctc_cd")
	{
		temp += "<select class=\"form_dropdown\" id=\"dental_pcp_prctc_cd\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "dspec.spec_prctc_cd")
	{
		temp += "<select class=\"form_dropdown\" id=\"dental_spec_prctc_cd\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "dall.pcp_prctc_cd")
	{
		temp += "<select class=\"form_dropdown\" id=\"dall_pcp_prctc_cd\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "dall.spec_prctc_cd")
	{
		temp += "<select class=\"form_dropdown\" id=\"dall_spec_prctc_cd\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "opp.spec_prctc_cd")
	{
		temp += "<select class=\"form_dropdown\" id=\"opp_spec_prctc_cd\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "mh_facility.level_care" || dropdown_str == "sa_facility.level_care" || dropdown_str == "rtf_facility.level_care")
	{
		temp += "<select class=\"form_dropdown\" id=\"bhh_level_care\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "mh_facility.age_range" || dropdown_str == "sa_facility.age_range" || dropdown_str == "rtf_facility.age_range")
	{
		temp += "<select class=\"form_dropdown\" id=\"bhh_age_range\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown_str == "mh_facility.type_service" || dropdown_str == "sa_facility.type_service" || dropdown_str == "rtf_facility.type_service")
	{
		temp += "<select class=\"form_dropdown\" id=\"bhh_type_service\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	else if(dropdown == "language")
	{
		temp += "<select class=\"form_dropdown\" id=\"" + getAdditionalSection(search_cat) + "_language\" onchange=\"makeDirty(this)\">" + dropdown_options + "</select>";
	}
	
	return temp;
}

function getDropdown(product_code, search_cat, dropdown, stored_dropdown)
{
	xmlHttp=GetXmlHttpObject();
	
	if(xmlHttp==null)
		return;

	var url = "/docfind/rd/dropdowns.jsp?site_id=" + site_id + "&search_cat=" + search_cat + "&dropdown=" + dropdown + "&product_code=" + product_code;

	xmlHttp.open("GET", url, false);
	
	xmlHttp.onreadystatechange = function()
	{
		if (xmlHttp.readyState == 4)
		{
			handleDropdown(stored_dropdown, xmlHttp.responseText);
		}
	}
	
	xmlHttp.send(null);
	
	//Firefox - handles synchronous data when onreadystatechange is bypassed
	if(window.XMLHttpRequest)
	{
		handleDropdown(stored_dropdown, xmlHttp.responseText);
	}
}

function handleDropdown(stored_dropdown, responseText)
{
	names.push(stored_dropdown);
	dropdowns.push(responseText);
}

function fillHospitalAffiliation(section)
{
	var dddiv = document.getElementById(section);
	getHospitalAffiliation(dddiv);
}

function createURLFromInput()
{
	var tempObj = document.getElementById("advanced_search");
	var geo1;
	var URL = "";
	
	for(var i=0; i < tempObj.geo1.length; i++)
	{
		if(tempObj.geo1[i].checked)
		{
			geo1 = tempObj.geo1[i].value;
			URL += ("&geo1=" + geo1);
		}
	}
	
	if(geo1 == "zip")
	{
		tempObj = document.getElementById("zipcode");
		URL += ("&zipcode=" + tempObj.value);
		tempObj = document.getElementById("miles");
		URL += ("&miles=" + tempObj.value);
	}
	else if(geo1 == "city")
	{
		tempObj = document.getElementById("city");
		URL += ("&city=" + tempObj.value);
		tempObj = document.getElementById("state");
		URL += ("&state=" + tempObj.value);
	}
	else if(geo1 == "county")
	{
		tempObj = document.getElementById("county");
		URL += ("&county=" + tempObj.value);
		tempObj = document.getElementById("state");
		URL += ("&state=" + tempObj.value);
	}
	
	tempObj = document.getElementById(ptID);
	URL += ("&search_cat=" + tempObj.value);
	tempObj = document.getElementById(productID);
	URL += ("&product=" + tempObj.value);
	
	return URL;
}

function getHospitalAffiliation(dddiv)
{
	xmlHttp=GetXmlHttpObject();
	
	if(xmlHttp==null)
		return;

	var myURL = createURLFromInput();
	var url = "/docfind/HospitalAffiliation.do?" + myURL + "&site_id=" + site_id + "&langpref=" + langpref + "&servReq=HOSPDD";

	xmlHttp.onreadystatechange = function()
	{
		if (xmlHttp.readyState == 4)
		{
			dddiv.innerHTML = xmlHttp.responseText;
		}
	}

	xmlHttp.open("GET", url, true);
	xmlHttp.send(null);
}

function GetXmlHttpObject()
{
	var xmlHttp=null;
	try
	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e)
	{
		// Internet Explorer
		try
		{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	
	return xmlHttp;
}

function nameSearchQuick(obj)
{
	if(obj.value == "medical_prov")
		show("medical_name_input_div_quick","medical_name_search_section_quick");
	else if(obj.value == "medical_grp")
		show("medical_group_input_div_quick","medical_name_search_section_quick");
	else if(obj.value == "")
		hide("medical_name_search_section_quick");
}

function hctpredetermined()
{
	if(zipcode != null)
	{
		var formObj = document.getElementById("zipcode");
		formObj.value = zipcode;
	}
	if(state != null)
	{
		selectDD(state, "state");
	}
	if(product != null)
	{
		selectDD(product,"scdd_medical_plan");
	}
	if(sortBy != null)
	{
		var formObj = document.getElementById("scdd_sortBy");
		formObj.value = sortBy;
	}
	if(selectedproc != null)
	{
		selectDD(selectedproc, "selectedproc");
		showHint(selectedproc);
	}
	if(miles != null)
	{
		selectDD(miles, "miles");
	}
	if(groups != null)
	{
		selectDD(groups, "groups");
	}

	if(errorretain != null)
	{
		document.forms[0].action="HCTHome.do";
		document.forms[0].submit();
	}	
}

function redirectindex()
{
	document.docform.action="home.do";
	document.docform.submit();
}
function zipDecoder()
{
	if(zipDecoderFlag != null)
	{
		if(zipcode != null){
			var formObj = document.getElementById("zipcode");
			formObj.value = zipcode;
		}	
		if(state != null)
			selectDD(state, "state");
	}
}
function pinPredetermine()
{
	var formObj = document.getElementById("pinSearch");
	for(var i=0; i < formObj.pinSearchType.length; i++)
	{
		if(formObj.pinSearchType[i].value == pinSearchType)
		{
			formObj.pinSearchType[i].checked = true;
			createPin(pinSearchType);
		}
	}
	if(provType != null)
	{
		selectDD(provType, "provType");
	}
}
function createPin(str)
{		
	if(str == "pin")
	{
		show("text_pin_div", "pin_label_section");
		if(pin != null){
			var formObj = document.getElementById("pin");
			formObj.value = pin;
		}
	}
	if(str == "npi")
	{
		show("text_npi_div", "pin_label_section");
		if(npi != null){
			var formObj = document.getElementById("npi");
			formObj.value = npi;
		}
	}
}

function checkQuick()
{
	var quick = document.getElementById("quick_submit");
	var formObj = document.getElementById("quick_search");
	
	if(quick == null || formObj == null)
		return;
	
	var geo_prov = false;
	var name = false;

	var city = document.getElementById("cityQuick");
	var state = document.getElementById("stateQuick");
	var prov = document.getElementById("provider_category_Quick");

	if(city != null && state != null && prov != null && city.value != "" && state.value != "" && prov.value != "")
		geo_prov = true;

	for(var i=0; i < formObj.medical_name_quick.length; i++)
	{
		if(formObj.medical_name_quick[i].checked)
		{
			if(formObj.medical_name_quick[i].value == "medical_prov")
			{
				var indiv = document.getElementById("medical_individual_Quick");

				if(indiv.value != "")
					name = true;
			}
			else if(formObj.medical_name_quick[i].value == "medical_grp")
			{
				var group = document.getElementById("medical_group_ipa_Quick");

				if(group.value != "")
					name = true;
			}
		}
	}

	if(geo_prov == true && name == true && quick.style.display != "none")
	{	
		quick.style.display = "";
		quick.disabled = false;
	}
	else
	{
		quick.style.display = "";
		quick.disabled = true;
	}
}

function nameSearchQuick(obj)
{
	if(obj.value == "medical_prov")
		show("medical_name_input_div_quick","medical_name_search_section_quick");
	else if(obj.value == "medical_grp")
		show("medical_group_input_div_quick","medical_name_search_section_quick");
	else if(obj.value == "")
		hide("medical_name_search_section_quick");
		
	checkQuick();
}

function preQuick()
{
	if(cityQuick != null)
	{
		var formObj = document.getElementById("cityQuick");
		formObj.value = cityQuick;
	}

	if(stateQuick != null)
		selectDD(stateQuick, "stateQuick");
	
	if(provider_category_quick != null)
		selectDD(provider_category_quick,"provider_category_Quick");
	
	if(search_criteria_quick == null || search_criteria_quick == '')
	{
		var formObj = document.getElementById("quick_search");
		if(formObj !=null)
		{
			formObj.medical_name_quick[0].checked = false;
			formObj.medical_name_quick[1].checked = false;
		}
		lastName_quick = null;
		firstName_quick = null;
		grpName_quick = null;
	}

	if(search_criteria_quick != null)
	{
		var formObj = document.getElementById("quick_search");
		if(search_criteria_quick == "medical_prov")
			formObj.medical_name_quick[0].checked = true;
		if(search_criteria_quick == "medical_grp")
			formObj.medical_name_quick[1].checked = true;
	}
		
	if(search_criteria_quick != null && (search_criteria_quick.value == "medical_prov" || search_criteria_quick == "medical_prov"))
	{
		show("medical_name_input_div_quick","medical_name_search_section_quick");
		if(lastName_quick != null)
		{
			var formObj = document.getElementById("medical_individual_Quick");
			formObj.value = lastName_quick;
		}
	
		if(firstName_quick != null)
		{
			var formObj = document.getElementById("medical_individual_first_Quick");
			formObj.value = firstName_quick;
		}
	}
	else if(search_criteria_quick != null && (search_criteria_quick.value == "medical_grp" || search_criteria_quick == "medical_grp"))
	{
		show("medical_group_input_div_quick","medical_name_search_section_quick");
		if(grpName_quick != null)
		{
			var formObj = document.getElementById("medical_group_ipa_Quick");
			formObj.value = grpName_quick;	
		}
	}
	
	checkQuick();
}

function choosePlan(obj)
{
	if(obj!=null && obj.value!=null)
	{
		var pl = obj.value;
		if(pl.indexOf("Mexico") != -1 && langpref=="en")
		{
			location.href = '/docfind/cms/html/mexico_medical_providers.html';
		}
		else if(pl.indexOf("Mexico") != -1 && langpref=="sp")
		{
			location.href = '/docfind/cms/html/mexico_medical_providers.html';
		}
	}

	checkAdditional();
}