function checkAll(isChecked)
{
    var obj = document.forms[0];

    for (var i = 0; i<obj.elements.length; i++) {
        if ((obj.elements[i].name.indexOf('checkbox') > -1)) {
            if (isChecked)
            {
                obj.elements[i].checked = true;
            } else {
                obj.elements[i].checked = false;
            }
        }
    }
}

function checkThis()
{
    var obj = document.forms[0];
    var counter = 0;
    var all = 0;

    for (var i = 0; i<obj.elements.length; i++) {
        if ((obj.elements[i].name.indexOf('checkbox') > -1)) {
            if (obj.elements[i].checked)
            {
                counter++;
            }
            all++;
        }
    }
    
    if (all == counter)
    {
        obj.allCheck.checked = true;
    } else {
        obj.allCheck.checked = false;
    }
}

function listHasSelected(obj)
{
	var counter = 0;
	
	for (var i = 0; i<obj.length; i++)
	{
		if (obj[i].selected)
		{
			counter++;
		}
	}
	
	if (counter != 0)
	{
		return true;
	} else {
		return false;
	}
}

function clearListSelection(obj)
{
	for (var i = 0; i<obj.length; i++)
	{
		obj[i].selected = false;
	}
}

function IsNumeric(strString)
   //  check for valid numeric strings	
   {
   var strValidChars = "0123456789.-";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
}

function submitSearch(clearValue)
{
	var obj = document.forms[0];
	var selectedSec = '';
	var locValue = '';
	
	if (clearValue)
	{
		for (var i = 0; i<obj.elements.length; i++) {
			if ((obj.elements[i].name.indexOf('selLocation') > -1)) {
				locValue = obj.elements[i].value;
			}
		}
	} else {
		locValue = obj.selLocation.value
	}
	
    for (var i = 0; i<obj.elements.length; i++) {
        if ((obj.elements[i].name.indexOf('checkbox') > -1)) {
            if (obj.elements[i].checked)
            {
				if (selectedSec == '')
				{
					selectedSec = obj.elements[i].value;
				} else {
					selectedSec = selectedSec + ',' + obj.elements[i].value;
				}
            }
        }
    }	

	if (obj.txtSearch.value == '')
	{
		alert('Please enter a search keyword');
		obj.txtSearch.focus();
		
		return false;
	} else {
		window.location.href = 'findjobs_search.aspx?search=' + obj.txtSearch.value + '&loc=' + locValue + '&sec=' + selectedSec;
		
		return false;
	}
}

function showLayer(id) {
  var lyr = getElemRefs(id);
  if (lyr && lyr.css) {
	lyr.style.position = 'static';
  	lyr.css.visibility = "visible";
  	//lyr.css.display = "block";
  }	
}

function hideLayer(id) {
  var lyr = getElemRefs(id);
  if (lyr && lyr.css) {
	lyr.style.position = 'absolute';
  	lyr.css.visibility = "hidden";
  	//lyr.css.display = "none";
  }
}

function getElemRefs(id) {
	var el = (document.getElementById)? document.getElementById(id): (document.all)? document.all[id]: (document.layers)? getLyrRef(id,document): null;
	if (el) el.css = (el.style)? el.style: el;
	return el;
}

function centerWin(url, name, w, h) {
  l = (screen.availWidth-10 - w) / 2;
  t = (screen.availHeight-20 - h) / 2;

  features = "width="+w+",height="+h+",left="+l+",top="+t;
  features += ",screenX="+l+",screenY="+t;
  features += ",scrollbars=0,resizable=1,location=0";
  features += ",menubar=0,toolbar=0,status=0";

  window.open(url, name, features);
}

function validEmail(incoming) {
	var emailstring = incoming;
	var ampIndex = emailstring.indexOf("@");
	var afterAmp = emailstring.substring((ampIndex + 1), emailstring.length);
		// find a dot in the portion of the string after the ampersand only
	var dotIndex = afterAmp.indexOf(".");
		// determine dot position in entire string (not just after amp portion)
	dotIndex = dotIndex + ampIndex + 1;
		// afterAmp will be portion of string from ampersand to dot
	afterAmp = emailstring.substring((ampIndex + 1), dotIndex);
		// afterDot will be portion of string from dot to end of string
	var afterDot = emailstring.substring((dotIndex + 1), emailstring.length);
	var beforeAmp = emailstring.substring(0,(ampIndex));
		//old regex did not allow subdomains and dots in names
		//var email_regex = /^[\w\d\!\#\$\%\&\'\*\+\-\/\=\?\^\_\`\{\|\}\~]+(\.[\w\d\!\#\$\%\&\'\*\+\-\/\=\?\^\_\`\{\|\}\~])*\@(((\w+[\w\d\-]*[\w\d]\.)+(\w+[\w\d\-]*[\w\d]))|((\d{1,3}\.){3}\d{1,3}))$/;
	var email_regex = /^\w(?:\w|-|\.(?!\.|@))*@\w(?:\w|-|\.(?!\.))*\.\w{2,3}/ 
		// index of -1 means "not found"
	if ((emailstring.indexOf("@") != "-1") &&
		(emailstring.length > 5) &&
		(afterAmp.length > 0) &&
		(beforeAmp.length > 1) &&
		(afterDot.length > 1) &&
		(email_regex.test(emailstring)) ) {
		  return true;
	} else {
			return false;
	}
}



