/* <![CDATA[ */

function addNewHrefAction(targetLinkID, functionName)
{
  var target = getObj(targetLinkID);
  alert("target = "+ target.childElements['inputRadius'].selectedIndex);
  if (target.addEventListener) // use addEventListener for DOM
  { 
    target.addEventListener('click', functionName, false);
  } 
  else if (target.attachEvent) // use attachEvent for IE  
  { 
    target.attachEvent('onclick', functionName);
  }   
}


function preventDefaultAction(evt) 
{
  alert("type of event = "+ typeof evt);
  if (evt) 
  {
    if (typeof evt.preventDefault!= 'undefined') 
    {
      evt.preventDefault(); // w3C
    } 
    else 
    {
      evt.returnValue = false; // IE
    }
  }
  return false; // safety for handling DOM Level 0
}


function selectField(field_name)
{
	for (var i = 0; i < document.forms.length; ++i)
	{
		if (document.forms[i].elements[field_name])
		{
			document.forms[i].elements[field_name].select();
			document.forms[i].elements[field_name].focus();
			break;
		}
	}
	return true;
}


function isNull(s)
{
  return (s == "" || s == "undefined" || s.length < 1);
}


function isValidEmail(s, emptyOk)
{
  if (!isNull(s))
  {
    var regEx = "^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$";
    return (s.search(regEx) != -1);
  }
  return emptyOk;
}


function isValidDate(s, emptyOk)
{ 
  if (isNull(s)) return emptyOk;
  
  var pattern = /0|1[0-9]\/[0-3][0-9]\/19|20[0-9]{2}/;
  if(s.match(pattern))
  {
    var date_array = s.split('/');
    var day = date_array[1];

    var month = date_array[0] - 1;
    var year = date_array[2];

    var source_date = new Date(year, month, day);
    if(year != source_date.getFullYear()) return false;
    if(month != source_date.getMonth()) return false;
    if(day != source_date.getDate()) return false;
    return true;
  }
  return false;
}


function isNumeric(s, emptyOk)
{
  if (!emptyOk && isNull(s)) return false;
  
	var validChars = "0123456789";
  var c;
  
  for (i = 0; i < s.length; ++i)
  {
  	c = s.charAt(i); 
  	if (validChars.indexOf(c) == -1)
    {
    	return false;
    }
  }
  return true;
}


function isDecimal(s, emptyOk)
{
  if (!emptyOk && isNull(s)) return false;
  
  var validChars = "0123456789.";
  var c;

  for (i = 0; i < s.length; ++i) 
  { 
    c = s.charAt(i); 
    if (validChars.indexOf(c) == -1) return false;
  }
  return true;   
}


function isValidZip(s, emptyOK)
{
	if (isNull(s)) return emptyOK;
	
	return (s.length == 5 && isNumeric(s));
}


function getObj(obj_id) 
{ 
	return (document.getElementById)?document.getElementById(obj_id):(document.all)?document.all[obj_id]:document[obj_id];
}



/* ]]> */

