// JavaScript Document

function hideSelects(action) {
//documentation for this script at http://www.shawnolson.net/a/1198/
//possible values for action are 'hidden' and 'visible'
if (action!='visible')
{
	action='hidden';
}
	var browser = navigator.appName;
	var version = navigator.appVersion;
	var browserTest = navigator.appName.indexOf("Microsoft")
	var versionTest = navigator.appVersion.indexOf("MSIE 7.0");
	var browserTestNetscape = navigator.appName.indexOf("Netscape")
	//alert(browserTest + " " +  versionTest);
	//alert('MS Test: ' + browserTest + ' ' + navigator.appName);
	//alert('Browser Version: ' + versionTest + ' ' + navigator.appVersion);
	//alert('Netscape Test: ' + browserTestNetscape + ' ' + navigator.appName);
	if (browserTestNetscape == -1)
	{
		if (browserTest != -1) 
		{	
			if (versionTest == -1) 
			{
				for (var S = 0; S < document.forms.length; S++)
				{
					for (var R = 0; R < document.forms[S].length; R++) 
					{
						if (document.forms[S].elements[R].options) 
						{
							document.forms[S].elements[R].style.visibility = action;
						}
					}
				}
			}
		}
	}
}

// this helps the AJAX app focus on the next form field.
// Sample Usage: 
// <input name="companyName" id="companyName" type="text" size="40" value="<%=companyName%>" onFocus="hideSelects('hidden')" onBlur="hideSelects('visible');setFocus('companyType');">
function setFocus(fieldName) 
{
document.getElementById(fieldName).focus();
}


// Disables the enter key on text fields.
// Sample usage
// <input name="companyName" id="companyName" type="text" size="40" value="" onkeypress="return noenter();">
function noenter() {
  return !(window.event && window.event.keyCode == 13); }




<!-- This script is based on the javascript code of Roman Feldblum (web.developer@programmer.net) -->
<!-- Original script : http://javascript.internet.com/forms/format-phone-number.html -->
<!-- Original script is revised by Eralper Yilmaz (http://www.eralper.com) -->
<!-- Revised script : http://www.kodyaz.com -->

var zChar = new Array(' ', '(', ') ', '-', '.');
var maxphonelength = 13;
var phonevalue1;
var phonevalue2;
var cursorposition;

function ParseForNumber1(object){
phonevalue1 = ParseChar(object.value, zChar);
}
function ParseForNumber2(object){
phonevalue2 = ParseChar(object.value, zChar);
}

function backspacerUP(object,e,myMode) { 

if(myMode=="US") {
	
	if(e){ 
	e = e 
	} else {
	e = window.event 
	} 
	if(e.which){ 
	var keycode = e.which 
	} else {
	var keycode = e.keyCode 
	}
	
	ParseForNumber1(object)
	
	if(keycode >= 48){
	ValidatePhone(object)
	}
	}

}

function backspacerDOWN(object,e, myMode) { 

if(myMode=="US") {
		if(e){ 
		e = e 
		} else {
		e = window.event 
		} 
		if(e.which){ 
		var keycode = e.which 
		} else {
		var keycode = e.keyCode 
		}
		ParseForNumber2(object)
		} 

}

function GetCursorPosition(){

var t1 = phonevalue1;
var t2 = phonevalue2;
var bool = false
for (i=0; i<t1.length; i++)
{
if (t1.substring(i,1) != t2.substring(i,1)) {
if(!bool) {
cursorposition=i
bool=true
}
}
}
}

function ValidatePhone(object){

var p = phonevalue1

p = p.replace(/[^\d]*/gi,"")

if (p.length < 3) {
object.value=p
} else if(p.length==3){
pp=p;
d4=p.indexOf('(')
d5=p.indexOf(')')
if(d4==-1){
pp="("+pp;
}
if(d5==-1){
pp=pp+")";
}
object.value = pp;
} else if(p.length>3 && p.length < 7){
p ="(" + p; 
l30=p.length;
p30=p.substring(0,4);
p30=p30+")"

p31=p.substring(4,l30);
pp=p30+p31;

object.value = pp; 

} else if(p.length >= 7){
p ="(" + p; 
l30=p.length;
p30=p.substring(0,4);
p30=p30+")"

p31=p.substring(4,l30);
pp=p30+p31;

l40 = pp.length;
p40 = pp.substring(0,8);
p40 = p40 + "-"

p41 = pp.substring(8,l40);
ppp = p40 + p41;

object.value = ppp.substring(0, maxphonelength);
}

GetCursorPosition()

if(cursorposition >= 0){
if (cursorposition == 0) {
cursorposition = 2
} else if (cursorposition <= 2) {
cursorposition = cursorposition + 1
} else if (cursorposition <= 5) {
cursorposition = cursorposition + 2
} else if (cursorposition == 6) {
cursorposition = cursorposition + 2
} else if (cursorposition == 7) {
cursorposition = cursorposition + 4
e1=object.value.indexOf(')')
e2=object.value.indexOf('-')
if (e1>-1 && e2>-1){
if (e2-e1 == 4) {
cursorposition = cursorposition - 1
}
}
} else if (cursorposition < 11) {
cursorposition = cursorposition + 3
} else if (cursorposition == 11) {
cursorposition = cursorposition + 1
} else if (cursorposition >= 12) {
cursorposition = cursorposition
}


var txtRange = object.createTextRange();
txtRange.moveStart( "character", cursorposition);
txtRange.moveEnd( "character", cursorposition - object.value.length);
txtRange.select();
}

}

function ParseChar(sStr, sChar)
{
if (sChar.length == null) 
{
zChar = new Array(sChar);
}
else zChar = sChar;

for (i=0; i<zChar.length; i++)
{
sNewStr = "";

var iStart = 0;
var iEnd = sStr.indexOf(sChar[i]);

while (iEnd != -1)
{
sNewStr += sStr.substring(iStart, iEnd);
iStart = iEnd + 1;
iEnd = sStr.indexOf(sChar[i], iStart);
}
sNewStr += sStr.substring(sStr.lastIndexOf(sChar[i]) + 1, sStr.length);

sStr = sNewStr;
}

return sNewStr;
}

// function closes window and refreshes the callin page.
function refreshParent() {
window.opener.window.location.reload();
window.close()
}




function openPopup(purl)
{
	wndAttr = "width=1000,height=600,left=100,top=100,resizable=1,scrollbars=1";

	var w = window.open(purl, 'ZSWindow', wndAttr);
	w.focus();
}


function textCounter(field, countfield, maxlimit) 
{if (field.value.length > maxlimit) 
// if too long...trim it!
field.value = field.value.substring(0, maxlimit);
// otherwise, update 'characters left' counter
else countfield.value = maxlimit - field.value.length;
}

// --------------------------------------------- openAdvCompanySearch
function openAdvCompanySearch()  {
var URL = '/includes/advancedSearch/company.asp?advCompanySearch=' + document.getElementById('advCompanySearch').value;
	URL = URL + '&advCompanyLogic=' + document.getElementById('advCompanyLogic').value;

	openPopup(URL);

}


function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function MM_showHideLayers() { //v9.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) 
  with (document) if (getElementById && ((obj=getElementById(args[i]))!=null)) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}