 // This is a small validation engine for the fields
function check (name, typpe)
{
	var elm = document.getElementsByName(name)[0];
	if (elm.type == "radio")
	{
		var sk = document.getElementsByName(name).length;
		la = false;
		for (i=0; i < sk; i++)
		{
			if(document.getElementsByName(name)[i].checked) 
			{
				la = true;
				break;
			}
		}
		if (la != true)
		{
			elm.style.border = '1px solid red';
			return false;
		}
	}
	else 
	{
		if (typpe == 'email') 
		{
			var str =elm.value;
			if (!(str.indexOf(".") > 2) || !(str.indexOf("@") > 0))
			{
				elm.style.border = '1px solid red';
				return false;
			}
		}
		if (typpe == 'zip') 
		{
			var str =elm.value;
			reZip = new RegExp(/(^\d{5}$)|(^\d{5}-\d{4}$)/);
			if (!reZip.test(str))
			{
				elm.style.border = '1px solid red';
				return false;
			}
		}
		if (typpe == 'nxx') 
		{
			var str =elm.value;
			reNxx = new RegExp(/(^\d{3}$)/);
			if (!reNxx.test(str))
			{
				elm.style.border = '1px solid red';
				return false;
			}
		}
		if (typpe == 'rest') 
		{
			var str =elm.value;
			reRest = new RegExp(/(^\d{4}$)/);
			if (!reRest.test(str))
			{
				elm.style.border = '1px solid red';
				return false;
			}
		}
		else {
			if (elm.value == '') 
			{
				elm.style.border = '1px solid red';
				return false;
			}
			else
			{
				elm.style.border = '1px solid #999999';
			}
		}
	}
	return true;
}
//validate a contact
function check_contact(suff, override_cmp)
{
	var errnm = 0;
	var msg1 = '';
	if (check ('fname_' + suff, null) == false) { msg1 += 'First name. <br />'; }
	if (check ('lname_' + suff, null) == false) {  msg1 += 'Last name. <br />'; }
	if(override_cmp != 1)
	{
		if (check ('company_' + suff, null) == false && document.getElementById('cmp_' + suff).style.display != 'none') {  msg1 += 'Company name. <br />';}
	}
	if (check ('email_' + suff, 'email') == false) {   msg1 += 'E-mail address. <br />';}
	if (check ('npa_' + suff, 'nxx') == false || check ('nxx_' + suff, 'nxx') == false || check ('rest_' + suff, 'rest') == false) {  check ('nxx_' + suff, 'nxx'); check ('rest_' + suff, 'rest') ; msg1 += 'A valid phone number. <br />'; }
	if (check ('ttype_' + suff, null) == false) {  msg1 += 'Telephone type. <br />';}
	return  msg1; 
}

function check_cont_pop(suff, comp)
{
	if (check ('fname_' + suff ,null) == false) { alert('Please fill in your first name.');  return false }; 
	if (check ('lname_' + suff ,null) == false) { alert('Please fill in your last name.');  return false };
	if (comp != null)
	{
		if (check ('company_' + suff ,null) == false) { alert('Please enter your company name.');  return false };
	}
	if (check ('email_' + suff , 'email') == false) { alert('Please enter a valid email address.');  return false };
	if (check ('npa_' + suff , 'nxx') == false) { alert('Please enter a valid phone number.');  return false };
	if (check ('nxx_' + suff , 'nxx') == false) { alert('Please enter a valid phone number.');  return false };
	if (check ('rest_' + suff , 'rest') == false) { alert('Please enter a valid phone number.');  return false };
	if (check ('ttype_' + suff ,null) == false) { alert('Please select the phone type.');  return false };
	return true;	
}


function addr_val(suff)
{
	var errnm = 0;
	var msg1 = '';
	if (check ('address1_' + suff, null) == false) { msg1 += 'First address line. <br />'; }
	if (check ('city_' + suff, null) == false) {  msg1 += 'City. <br />'; }
	if (check ('state_' + suff, null) == false) { msg1 += 'State. <br />'; }
	if (check ('zip_' + suff, 'zip') == false) {  msg1 += 'Zip. <br />'; }
	return msg1;
}
function addr_val_pop(suff)
{
	if (check ('address1_' + suff, null) == false) { alert('Please fill in your address.');  return false };
	if (check ('city_' + suff, null) == false) { alert('Please fill in your city.');  return false };
	if (check ('state_' + suff, null) == false) { alert('Please fill in your state.');  return false };
	if (check ('zip_' + suff, 'zip') == false) { alert('Please enter a valid zip code.');  return false };
	return true;
}
function usr_val(suff)
{
	var errnm = 0;
	var msg1 = '';
	if (check ('usr_opt_' + suff, null) == false) { msg1 += 'Select your user email option. <br />'; }
	else 
	{
		if (document.getElementById('usr_opt2_' + suff).checked) 
		{ 
			if (check ('em_base_' + suff, null) == false) { msg1 += 'Enter your new email address. <br />';  document.getElementById('em_base_' + suff).style.border='1px solid red'; }
			if (document.getElementById('pass1_' + suff).value.length < 5) { msg1 += 'Password must be at least 5 characters. <br />';  document.getElementById('pass1_' + suff).style.border='1px solid red'; document.getElementById('pass2_' + suff).style.border='1px solid red'; }
			if (document.getElementById('pass1_' + suff).value != document.getElementById('pass2_' + suff).value) { msg1 += 'Passwords do not match. <br />'; document.getElementById('pass1_' + suff).style.border='1px solid red'; document.getElementById('pass2_' + suff).style.border='1px solid red'; }
			kajs = '';
			kajs = geto('check_user.php', 'p=check&email=' + document.getElementById('em_base_' + suff).value + '@' +  document.getElementById('em_suf_' + suff)[document.getElementById('em_suf_' + suff).selectedIndex].text);
			if (kajs != 'E-mail account is available.') { msg1 += 'E-mail account is not available.'; document.getElementById('em_base_' + suff).style.border='1px solid red';  }
		}
		else if (document.getElementById('usr_opt1_' + suff).checked)
		{
			if (document.getElementById('passc1_' + suff).value.length < 5) { msg1 += 'Password must be at least 5 characters. <br />'; document.getElementById('passc1_' + suff).style.border='1px solid red'; document.getElementById('passc2_' + suff).style.border='1px solid red'; }
			if (document.getElementById('passc1_' + suff).value != document.getElementById('passc2_' + suff).value) { msg1 += 'Passwords do not match. <br />'; document.getElementById('passc1_' + suff).style.border='1px solid red'; document.getElementById('passc2_' + suff).style.border='1px solid red'; }	
			kajs = '';
			kajs = geto('check_user.php', 'p=existing&email=' + document.getElementById('email_' + suff).value);
			if (kajs != 'true') {  msg1 += kajs + ' <br />'; document.getElementById('email_' + suff).style.border='1px solid red'; }
			
		}
		
	}
	return msg1;	
}
/////////////////////////////////////THIS IS MENU FUNCTIONS
//this function colapses the grey item 
function pol (ai)
{
	var n = document.getElementById(ai);
	do 
	{
		n = n.nextSibling;
		
		if (n != null && n.className == 'menu_item') { 
			if (n.style.display == '')
			{
				n.style.display = 'none'; 
			}
			else {
				n.style.display = ''; 
			}
		}
	}
	while (n);
}
 //this function closes all the grey tabs in other sections 
function oth (let)
	{
		if (document.getElementById('sidemenu' + let) != null) { 
			var kiek = document.getElementById('sidemenu' + let).childNodes.length;
			var a=0;
			for(i=0; i<kiek; i++)
			{
				elm = document.getElementById('sidemenu' + let).childNodes[i];
				if (elm.nodeName == 'DIV' && elm.id == '') 
				{
					kurz = 'x' + let + a;
					elm.style.display = 'none';
					if (let != 'a' && document.getElementById('x' + let + a) != null) 
					{
						document.getElementById('x' + let + a).className = 'category_unopen';
					}
					a++;
				}
			}
		}
	}
 //this function explodes the orange tab 
function expl (aidi, let)
{
	if (document.getElementById(aidi).className == 'category_open'  || (document.getElementById(aidi).className == 'section_header' && document.getElementById('sidemenu' + let).childNodes[3].style.display != 'none')) { 
		var n = document.getElementById(aidi);	
		do n = n.nextSibling;
		while (n && n.nodeType != 1) {
			n.style.display = 'none';
		}
		if (document.getElementById(aidi).className == 'category_open') {
			document.getElementById(aidi).className = 'category_unopen';
		}
	}
	else if (document.getElementById(aidi).className == 'category_unopen' || document.getElementById(aidi).className == 'section_header') { 
		if (document.getElementById(aidi).className == 'category_unopen') { document.getElementById(aidi).className='category_open'; }
		var kiek = document.getElementById('sidemenu' + let).childNodes.length;
		var a=0;
		for(i=0; i<kiek; i++)
		{
			elm = document.getElementById('sidemenu' + let).childNodes[i];
			if (elm.nodeName == 'DIV' && elm.id == '') 
			{
				kurz = 'x' + let + a;
				if (kurz == aidi)
				{
				 elm.style.display = '';
				}
				else 
				{
				 elm.style.display = 'none';
				 document.getElementById('x' + let + a).className = 'category_unopen';
				}
				a++;
			}
		}	
		if (let == '1') { oth('2'); oth('3'); oth('4'); }
		else if (let == '2') { oth('1'); oth('3'); oth('4');}
		else if (let == '3') { oth('1'); oth('2'); oth('4');}
		else if (let == '4') { oth('1'); oth('2'); oth('3');}
		
	}
}
//this function changes the "required" image to blue when it is filled
function change_sup(aid)
{
	br = "other";
	path = document.getElementById(aid).parentNode.parentNode.childNodes[1].childNodes[1].src;
	if (path == undefined) 
	{
		//this is for internet explorer
		path = document.getElementById(aid).parentNode.parentNode.childNodes[0].childNodes[1].src; 
		br = "IE";
	}
	if (document.getElementById(aid).value != '') { fld = '_filled';  document.getElementById(aid).style.border = '1px solid #999999'; }
	else { fld = ''; }
	if (br == "IE")
	{
		document.getElementById(aid).parentNode.parentNode.childNodes[0].childNodes[1].src = location.protocol + '//' + location.hostname +  "/images/sup" + fld + ".gif";	
	}
	else 
	{
		document.getElementById(aid).parentNode.parentNode.childNodes[1].childNodes[1].src = location.protocol + '//' + location.hostname + "/images/sup" + fld + ".gif";
	}
}
function show_inq ()
{
	if (document.getElementById('inq_form').style.display == 'none') 
	{
		document.getElementById('leftcorner').style.display=''; 
		document.getElementById('rightcorner').style.display=''; 
		document.getElementById('inq_form').style.display=''; 
		document.getElementById('arr_img').src= 'images/arr_up.gif';
		document.getElementById('inquirycoat').style.height='auto'; 
		document.getElementById('call').style.display='none'; 
	} 
	else 
	{ 
		document.getElementById('leftcorner').style.display='none'; 
		document.getElementById('rightcorner').style.display='none'; 
		document.getElementById('inq_form').style.display='none'; 
		document.getElementById('arr_img').src= 'images/arr_down.gif';
		document.getElementById('inquirycoat').style.height='27px'; 
		document.getElementById('call').style.display=''; 
	}

}
function req_quote()
{
	document.getElementById('interest').style.border='2px solid #ED1C24';
}
function serv_req_dl()
{
	document.getElementById('address1_sr').style.border='2px solid #ED1C24';
	document.getElementById('tnpa_sr').style.border=''; 
	document.getElementById('tnxx_sr').style.border=''; 
	document.getElementById('trest_sr').style.border='';	
}
function serv_req_ln()
{
	document.getElementById('address1_sr').style.border='';
	document.getElementById('tnpa_sr').style.border='1px solid #ED1C24'; 
	document.getElementById('tnxx_sr').style.border='1px solid #ED1C24'; 
	document.getElementById('trest_sr').style.border='1px solid #ED1C24';	
}
//DETECTING FLASH
function is_flash()
{
	var MM_contentVersion = 9;
	var plugin = (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"]) ? navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin : 0;
	if ( plugin ) 
	{
		var words = navigator.plugins["Shockwave Flash"].description.split(" ");
		for (var i = 0; i < words.length; ++i)
		{
			if (isNaN(parseInt(words[i])))
				continue;
			var MM_PluginVersion = words[i]; 
		}
		var MM_FlashCanPlay = MM_PluginVersion >= MM_contentVersion;
			
	}
	else if (navigator.userAgent && navigator.userAgent.indexOf("MSIE")>=0 
	   && (navigator.appVersion.indexOf("Win") != -1)) {
		document.write('<SCR' + 'IPT LANGUAGE=VBScript\> \n'); //FS hide this from IE4.5 Mac by splitting the tag
		document.write('on error resume next \n');
		document.write('MM_FlashCanPlay = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & MM_contentVersion)))\n');
		document.write('</SCR' + 'IPT\> \n');
		return true;
	}
	if (MM_FlashCanPlay) { return true; }
	else { return false; }
	
}
