/* used for debugging
function test()
{
	alert("!");
	return false;
}
*/

//Automatically moves cursor to next input box
function autotab(original,destination)
{
	if(original.getAttribute&&original.value.length==original.getAttribute("maxlength"))
		document.getElementById(destination).focus()
}


//Shows error div for empty value
function checkSetValue(form, value, errordiv)
{	
	if(document.getElementById(value).value.length <=  1)
		document.getElementById(errordiv).style.display = "";
}

//Highlights active text input border
function colorBox(id)
{
	document.getElementById(id).style.borderColor = "#DAA520";
	document.getElementById(id).style.borderStyle = "solid";
	document.getElementById(id).style.borderWidth = "2px";
}

//Highlights border red for field with errors
function errorBox(id)
{
	document.getElementById(id).style.borderColor = "red";
	document.getElementById(id).style.borderStyle = "solid";
	document.getElementById(id).style.borderWidth = "2px";
}

//Shows an input box to manually enter a city name if "Other" is selected fromthe city dropdown box
function inputCity()
{
	if(document.getElementById("city").value == "other")
	 {
		document.getElementById("city").style.display = "none"
		document.getElementById("c2").style.display = ""
	 }
}

//Shows selected values in a preview div
function preview(item) 
{

	switch(item)
	{
		case 'bizname':
			var bizname = document.getElementById("bizname").value;
			document.getElementById("preview_bizname").innerHTML = "<strong>"+bizname+"</strong>";
			break;
		case 'addr':
			var addr = document.getElementById("address1").value;
			document.getElementById("preview_addr").innerHTML = addr;
			break;
		case 'city':
			var city = document.getElementById("city").value;
			city = city+",  ";
			document.getElementById("preview_city").innerHTML = city;
			break;
		case 'city2':
			var city = document.getElementById("city2").value;
			city = city+",  ";
			document.getElementById("preview_city").innerHTML = city;
			break;
		case 'zip':
			var zip = document.getElementById("postal_code").value;
			document.getElementById("preview_zip").innerHTML = zip;
			break;
		case 'url':
			var url = document.getElementById("website_url").value;
			document.getElementById("preview_url").innerHTML = '<a href="'+url+'">'+url+'</a>';
			break;
		case 'email':
			var email = document.getElementById("contact_email").value;
			document.getElementById("preview_email").innerHTML = email;
			break;
		case 'phone1':
			var phone = document.getElementById("phone_number1").value+".";
			document.getElementById("preview_phone1").innerHTML = phone;
			break;
		case 'phone2':
			var phone = document.getElementById("phone_number2").value+".";
			document.getElementById("preview_phone2").innerHTML = phone;
			break;
		case 'phone3':
			var phone = document.getElementById("phone_number3").value;
			document.getElementById("preview_phone3").innerHTML = phone;
			break;
		case 'category':
			var category = document.getElementById("primaryTopic");
			var category_select = category.options[category.selectedIndex].text;
            if(category_select == "-- Select Category --")
				{ category_select = "Category"; }
			document.getElementById("preview_cat").innerHTML = category_select;
			break;
		case 'subcategory':
			var subcategory = document.getElementById("subTopic").value;
			document.getElementById("preview_subcat").innerHTML = subcategory;
			break;
	}	
}



//Restore text input border
function restoreBox(id)
{
	document.getElementById(id).style.borderColor = "#7F9DB9";
	document.getElementById(id).style.borderWidth = "1px";
}

//Removes city input box and restores dropdown select menu for city name
function restoreCityList()
{
		document.getElementById("city2").value == ""
		//document.getElementById("city2").innerhtml == " "
		document.getElementById("cityval").value == ""
		document.getElementById("city").style.display = ""
		document.getElementById("city").value = ""
		document.getElementById("c2").style.display = "none"
}

//If open hours are set to closed or 24hrs, do not show closing hours for business times on business listing reg form
function setHours(open, close)
{	
	if(document.getElementById(open).value == "closed" || document.getElementById(open).value == "24hrs")
	{
		document.getElementById(close).value = document.getElementById(open).value;
		document.getElementById(close).style.display = "none";
	}
	else
		document.getElementById(close).style.display = "";
}

//Set the value of specified id element on event handler
function setValue(val, id)
{
	//alert(val);
	document.getElementById(id).value = val;
}


//Ensure no required fields are blank
function validateBusinessForm()
{
	var items = new Array("bizname", "address1", "city", "postal_code", "phone_number1", "phone_number2", "phone_number3");
	var selects = new Array("primaryTopic", "subTopic");
	var size = items.length;
	var size2 = selects.length;
	var i = 0;
	var err = 0;
	
	for (i=0; i<size; i++)
	{
		if(document.getElementById(items[i]).value.length <=  1)
		{
			err++;
			errorBox(items[i]);
		}
	}
	
	for (i=0; i<size2; i++)
	{
		if(document.getElementById(selects[i]).value == "")
		{
			err++;
			errorBox(selects[i]);
		}
	}
	
	if(document.getElementById("city").value == "other" && document.getElementById("city2").value.length == "")
	{
		err++;
		errorBox("city2");
	} 
	
	if(err > 0)
	 {
		alert("Please fill out the required information!");
		return false;
	 }
	 else
	 {
		document.detailsPanel.submit()
	 }

}

//Ensure all required fields are populated for LABC registration form
function  validateLoginInfo()
{
	var items = new Array("login_email", "login_pw");
	var size = items.length;
	var i = 0;
	var err = 0;
	
	for (i=0; i<size; i++)
	{
		if(document.getElementById(items[i]).value.length <=  1)
		{
			err++;
			errorBox(items[i]);
		}
	}
	
	if(err > 0)
	 {
		alert("Please fill out the required information!");
		return false;
	 }
	 else
	 {
		document.login.submit()
	 }
}

//Checks to see if registration username and email are not empty
function  validateRegisterInfo()
{
	var username = register.getElementById("username").value;
	var email = register.getElementById("email").value;
	
	if(username.length <= 0)
		register.getElementById("error_username").style.display = "";
	else
		register.getElementById("error_username").style.display = "none";
	
	if(email.length <= 0)
		register.getElementById("error_email").style.display = "";
	else
		register.getElementById("error_email").style.display = "none";

	
}

//Ensure phone number is numeric
function validateNum(num1, num2, num3)
{
	var num = num1+num2+num3;
		
	if(isNaN(num))
	{
		alert("Your number does not appear to be valid.");
		return false;
	}
}

//Ensure zip code has appropriate number of digits and legal characters
function validateZIP(id)
{	
	var valid = "0123456789-";
	var hyphencount = 0;
	var field = document.getElementById(id).value;

	if (field.length!=5) 
	{
		alert("Please enter your 5 digit zip code.");
		return false;
	}
	
	for (var i=0; i < field.length; i++) 
	{
		temp = "" + field.substring(i, i+1);
		if (temp == "-") hyphencount++;
		if (valid.indexOf(temp) == "-1") 
		{
			alert("Invalid characters in your zip code.  Please try again.");
			return false;
		}
	}
	return true;
}

//Hides submit button
function hideSubmit()
{
	getElementById("submit_button").style.display = "none";
}

//Restores submit button
function restoreSubmit()
{
	getElementById("submit_button").style.display = "";
}


