var rangeFields;
var attrFields;

function arrayContains(anArray, value)
{
    for (i=0; i< anArray.length; i++)
    {
        if (anArray[i] == value)
        {
            return true;
        }
    }
    return false;
}

function setSearchConfiguratorValidation()
{
	var theForm = document.getElementById('searchConfiguratorForm');
	if (theForm != null)
	{
		theForm.onsubmit = validateForm;
	}
	var Selects = document.getElementsByTagName("select");
	for (i=0; i<Selects.length; i++)
	{
		Selects[i].onchange = validateForm;	
	}

	var Selects = document.getElementsByTagName("select");
	for (i=0; i<Selects.length; i++)
	{
		Selects[i].onchange = validateForm;	
	}
}


function validateForm()
{
			var fromTextBox = document.getElementById('rangeFrom_Products_VolNomEntered');
			var toTextBox = document.getElementById('rangeTo_Products_VolNomEntered');
			var valueFrom = -1;
			var valueTo = -1;
			if (fromTextBox != null)
			{
				if (
					fromTextBox.value.match(/^\s*[0-9]+.{0,1}[0-9]+\s*$/) == null
					&&
					fromTextBox.value.match(/^\s*[0-9]+\s*$/) == null
					&&
					fromTextBox.value.match(/^\s*$/) == null
					)
					{
						alert("Please check if the value entered as a lower limit is correct");
						return false;
					}
					else
					{
						valueFrom = parseFloat(fromTextBox.value);
					}
			}
			
			if (toTextBox != null)
			{
				if (
					toTextBox.value.match(/^\s*[0-9]+.{0,1}[0-9]+\s*$/) == null
					&&
					toTextBox.value.match(/^\s*[0-9]+\s*$/) == null
					&&
					toTextBox.value.match(/^\s*$/) == null
					)
					{
						alert("Please check if the value entered as an upper limit is correct");
						return false;
					}
					else
					{
						valueTo = parseFloat(toTextBox.value);
					}
			}
			if (valueFrom == -1 || valueTo == -1)
			{
				alert("Please check if the values entered are correct");
				return false;
			}
			if (valueTo<valueFrom)
			{
				alert("Please make sure that the lower limit is smaller than the upper.");
				return false;
			}
			var theForm = document.getElementById('searchConfiguratorForm');
			if (theForm != null)
			{
				//copy selects to hidden inputs
				selects = theForm.getElementsByTagName('select');
				var copyEl;
				for (i=0; i<selects.length; i++)
				{
					//if (selects[i].parent == theForm)
					//{  
						copyEl = document.createElement('input');
						copyEl.type='hidden';
						copyEl.name = selects[i].name;
						copyEl.value = selects[i].value;
						selects[i].disabled = true;
						theForm.appendChild(copyEl);				
					//}
				}
				
				//copy textboxes ...
				textboxes = theForm.getElementsByTagName('input');
				for (i=0; i<textboxes.length; i++)
				{
					if (textboxes[i].type == 'text')
					{
						copyEl = document.createElement('input');
						copyEl.type='hidden';
						copyEl.name = textboxes[i].name;
						copyEl.value = textboxes[i].value;
						textboxes[i].disabled = true;
						theForm.appendChild(copyEl);				
					}
				}
			
				buttons = theForm.getElementsByTagName('input');
				for (i=0; i<buttons.length; i++)
				{
					if (buttons[i].type == 'button' || buttons[i].type == 'submit')
					{
						buttons[i].disabled=true;
					}
					
				}
				
				
				if (
					(document.getElementById('pageNavigation') == null
				 	|| document.getElementById('pageNavigation').value == "")
				 	&& document.getElementById('pageNumberInput') != null
				 
				 )
				{
					document.getElementById('pageNumberInput').value = '0';
				}
				//sorting
				var orderbyEl = document.getElementById('SearchConfiguratorOrdering');
				if (orderbyEl != null)
				{
					if (arrayContains(rangeFields, orderbyEl.options[orderbyEl.selectedIndex].value))
	                {
	                    document.getElementById('sortAdditional').value='range';
	                }
	                else if (arrayContains(attrFields, orderbyEl.options[orderbyEl.selectedIndex].value))
	                {
	                    document.getElementById('sortAdditional').value='attr';
	                }
	                else
	                {
	                    document.getElementById('sortAdditional').value='';
	                }
				}
				theForm.submit();
			}
}

function setLinkToManufacturer()
{


  var nothingSelected = "true";
  var theSelects = document.getElementById('configuratorTable').getElementsByTagName('select');
 
  for (i=0; i<theSelects[3].childNodes.length; i++)
     {

        if (theSelects[3].childNodes[i].selected  && (!(theSelects[3].childNodes[i].value == '')))
         {
          nothingSelected = "false";
          break;
         }         
     }

   if (nothingSelected == "false")
     {
      var takeManList = document.getElementById('theResults').getElementsByTagName('span');

       document.getElementById('manufacturerLink').href = "http://software.webpac.com/default.aspx?SB=" + takeManList[2].innerHTML;
       document.getElementById('manufacturerLink').style.display = "inline";
     }
    else
     document.getElementById('manufacturerLink').style.display = "none";
}
