/*********************************
   retail.js for mobile rtail locator for Nike jumpman23.com
   code by Steve Bond and Loyal Chow
*********************************/

/******************************************************************************
   Validation
 *****************************************************************************/

function validateField(formName, field) {
	var fieldObj = getFormField(formName, field);
	if (fieldObj.value && fieldObj.value != 'null') {
		return true;
	}
	return false;
}

function validateSearch(formName) { 
	 if (validateField(formName, 'zip')) {
		  return true;
	 }
	 if (validateField(formName, 'city') && validateField(formName, 'state')) {
		  return true;
	 }       
	 alert("You must enter a zip code and/or a state and city.");
	 return false;
}

function validateSearchCanada(formName) { 
	 if (validateField(formName, 'zip')) {
		  return true;
	 }
	 if (validateField(formName, 'city') && validateField(formName, 'state')) {
		  return true;
	 }       
	 alert("You must enter a postal code and/or a province and city.");
	 return false;
}

function validateSearchEurope(formName)
{
	 if (validateField(formName, 'country') && validateField(formName, 'cityName')) {
		  return true;
	 }       
	 alert("You must enter a country and city.");
	 return false;

}

function validateSearchAuNZ(formName)
{

	 if (validateField(formName, 'country') && validateField(formName, 'state') && validateField(formName, 'cityName')) {
		  return true;
	 }       
	 alert("You must enter a country, state, and city.");
	 return false;

}


/******************************************************************************
   Helper Functions
 *****************************************************************************/
function getFormField(formName, fieldName) {
	var formObj = document.getElementById(formName);
	var fieldObj = formObj.elements[fieldName];
	return fieldObj;
}

function clearSelect(selectObj)
{
	for(var i = selectObj.options.length-1; i>0; i--)
	{
		selectObj.options[i] = null;
	}
}

/******************************************************************************
   Form Functions
 *****************************************************************************/
function getCities(countrySel, citySel)
{
	// clear options
	clearSelect(citySel);
	
	// add new ones
	
	for(var i = 0; i<cntry[countrySel.options[countrySel.selectedIndex].value].length; i++)
	{
		var cName = cntry[countrySel.options[countrySel.selectedIndex].value][i];
		citySel.options[i+1] = new Option(cName,cName);
	}
}

function getAUNZStates(countrySel, stateSel, citySel)
{
	// clear options
	clearSelect(citySel);
	clearSelect(stateSel);
	
	// add new ones
	
	for(var i = 0; i<cntry[countrySel.options[countrySel.selectedIndex].value].length; i++)
	{
		var stateObj = cntry[countrySel.options[countrySel.selectedIndex].value][i];
		stateSel.options[i+1] = new Option(stateObj.name,stateObj.id);
	}
}

function getAUNZCities(countrySel, stateSel, citySel)
{
	// clear options
	clearSelect(citySel);
	
	var stateObj = cntry[countrySel.options[countrySel.selectedIndex].value][stateSel.selectedIndex-1];
	
	// add new ones
	for(var i = 0; i<stateObj.cities.length; i++)
	{
		var cName = stateObj.cities[i];
		citySel.options[i+1] = new Option(cName,cName);
	}
}

