function delete_popup(pk, rootAddress) {
	var confirm_delete=window.confirm('Are you sure you want to delete this item?');
	if (confirm_delete)
	  parent.location=rootAddress+'&pk_a=delete&pk=' + pk;
}

function isEmailAddr(email)
{
  var result = false;
  var theStr = new String(email);
  var index = theStr.indexOf('@');
  if (index > 0)
  {
    var pindex = theStr.indexOf('.',index);
    if ((pindex > index+1) && (theStr.length > pindex+1))
	result = true;
  }
  return result;
}

function validRequired(formField,fieldLabel)
{
	var result = true;
	
	if (formField.value == "")
	{
		alert('Please enter a value for the "' + fieldLabel +'" field.');
		formField.focus();
		result = false;
	}
	
	return result;
}

function allDigits(str)
{
	return inValidCharSet(str,'0123456789.');
}

function inValidCharSet(str,charset)
{
	var result = true;

	// Note: doesn't use regular expressions to avoid early Mac browser bugs	
	for (var i=0;i<str.length;i++)
		if (charset.indexOf(str.substr(i,1))<0)
		{
			result = false;
			break;
		}
	
	return result;
}

function validEmail(formField,fieldLabel,required)
{
	var result = true;
	
	if (required && !validRequired(formField,fieldLabel))
		result = false;

	if (result && ((formField.value.length < 3) || !isEmailAddr(formField.value)) )
	{
		alert('Please enter a complete email address in the form: yourname@yourdomain.com');
		formField.focus();
		result = false;
	}
   
  return result;

}

function validNum(formField,fieldLabel,required)
{
	var result = true;
	
	if (formField.value == '')
		result = true;
	else {
		if (required && !validRequired(formField,fieldLabel))
			result = false;
	  
		if (result)
		{
			if (!allDigits(formField.value))
			{
				alert('Please enter a number for the "' + fieldLabel +'" field.');
				formField.focus();		
				result = false;
			}
		} 
	}
	
	return result;
}

function validPassword(formField,formField2,fieldLabel,required)
{
	var result = true;
	if( (formField.value != formField2.value || formField.value == '' || formField.value.length < 8) && required == 1) {
		alert('Please enter a valid password. The password and password re-entry fields must match.');
		formField.focus();
		result = false;
	}
	return result;
}

function validInt(formField,fieldLabel,required)
{
	var result = true;

	if (required && !validRequired(formField,fieldLabel))
		result = false;
  
 	if (result)
 	{
 		var num = parseInt(formField.value,10);
 		if (isNaN(num))
 		{
 			alert('Please enter a number for the "' + fieldLabel +'" field.');
			formField.focus();		
			result = false;
		}
	} 
	
	return result;
}


function validDate(formField,fieldLabel,required)
{
	var result = true;

	if (required && !validRequired(formField,fieldLabel))
		result = false;
  
 	if (result)
 	{
 		var elems = formField.value.split('/');
 		
 		result = (elems.length == 3); // should be three components
 		
 		if (result)
 		{
 			var month = parseInt(elems[0],10);
  			var day = parseInt(elems[1],10);
 			var year = parseInt(elems[2],10);
			result = allDigits(elems[0]) && (month > 0) && (month < 13) &&
					 allDigits(elems[1]) && (day > 0) && (day < 32) &&
					 allDigits(elems[2]) && ((elems[2].length == 2) || (elems[2].length == 4));
 		}
 		
  		if (!result)
 		{
 			alert('Please enter a date in the format MM/DD/YYYY for the "' + fieldLabel +'" field.');
			formField.focus();		
		}
	} 
	
	return result;
}

function selectCat(cellID, catID, index, count) {

	if (document.getElementById('src_hierarch').value == '' && 
		index*1>0 &&
		index*1 != count+1)
	{
		cellID.className='over';
		document.getElementById('src_hierarch').value=catID;
		document.getElementById('src_index').value=index;
		if (index*1<=count*1){
			document.getElementById('action').value='new';
		}
		else {
			document.getElementById('action').value='move';
		}
	}
	else if (
		index*1>count &&
		document.getElementById('src_hierarch').value != '' && 
		document.getElementById('dest_hierarch').value == '' && 
		catID != document.getElementById('src_hierarch').value)
	{
		cellID.className='over_blue';
		document.getElementById('dest_hierarch').value=catID;
		document.getElementById('dest_index').value=index;
	}
}

function clearAll()
{
	var srcIndex = document.getElementById('src_index').value;
	var destIndex = document.getElementById('dest_index').value;
	
	if (srcIndex != '')
	{
		if (srcIndex % 2 == 0)
			document.getElementById('HierarchyCell:'+srcIndex).className='defaultRowOn';
		else
			document.getElementById('HierarchyCell:'+srcIndex).className='defaultRowOff';
	}

	if (destIndex != '')
	{
		if (destIndex % 2 == 0)
			document.getElementById('HierarchyCell:'+destIndex).className='defaultRowOn';
		else
			document.getElementById('HierarchyCell:'+destIndex).className='defaultRowOff';
	}

	document.getElementById('src_hierarch').value = '';
	document.getElementById('src_index').value = '';
	document.getElementById('dest_hierarch').value = '';
	document.getElementById('dest_index').value = '';
}

function setAction(newAction) 
{
	document.getElementById('action').value=newAction;
}

function validate()
{
	if (document.getElementById('dest_hierarch').value == '' || document.getElementById('src_hierarch').value == '')
	{
		alert('There are no changes to submit!');
	}
	else
	{
		document.move_cat_frm.submit();
	}

}

function unHide(divName) {
	if (document.getElementById(divName).style.display=='none')
		document.getElementById(divName).style.display='block';
	else
		document.getElementById(divName).style.display='none';
}


function validDate(formField,fieldLabel,required)
{
	var result = true;

	if (required && !validRequired(formField,fieldLabel))
		result = false;
  
 	if (result)
 	{
 		var elems = formField.value.split('/');
 		
 		result = (elems.length == 3); // should be three components
 		
 		if (result)
 		{
 			var month = parseInt(elems[0],10);
  			var day = parseInt(elems[1],10);
 			var year = parseInt(elems[2],10);
			result = allDigits(elems[0]) && (month > 0) && (month < 13) &&
					 allDigits(elems[1]) && (day > 0) && (day < 32) &&
					 allDigits(elems[2]) && ((elems[2].length == 2) || (elems[2].length == 4));
 		}
 		
  		if (!result)
 		{
 			alert('Please enter a date in the format MM/DD/YYYY for the "' + fieldLabel +'" field.');
			formField.focus();		
		}
	} 
	
	return result;
}

function validCC(formField,fieldLabel,required)
{
	var result = true;

	if (required && !validRequired(formField,fieldLabel))
		result = false;
  
 	if (result)
 	{
// check for proper length
		if ( (!(formField.value.length == 16)) && (!(formField.value.length == 15)) )
		{
			alert('Please enter a number for the "' + fieldLabel +'" field.');
			formField.focus();		
			result = false;
		}
// check for numeric
		if (formField.value.substring(0,12) == 'xxxxxxxxxxxx') 
		{
			if (!allDigits(formField.value.substring(12,16)))
			{
			alert('Please enter a number for the "' + fieldLabel +'" field.');
			formField.focus();		
			result = false;
			}
		}
		else if (!allDigits(formField.value))
 		{
			alert('Please enter a number for the "' + fieldLabel +'" field.');
			formField.focus();		
			result = false;
		}
	}

	return result;
}

{
	var n;
	var p;
	var p1;
	
	function FormatPhone(m){
		n=m.name;
		p1=m
		ValidatePhone()
		}
		
	function ValidatePhone(){
		p=p1.value
		if(p.length==5){
			pp=p;
			d4=p.indexOf('(')
			d5=p.indexOf(')')
			if(d4==-1){
				pp="("+pp;
			}
			if(d5==-1 & p.length==5){
				pp=pp+")";
			}
			p1.value="";
			p1.value=pp;
		}
		if(p.length>3){
			d1=p.indexOf('(')
			d2=p.indexOf(')')
			if (d2==-1){
				l30=p.length;
				p30=p.substring(0,4);
				if (p.length==5) {
					p30=p30+")"
				}
				p31=p.substring(4,l30);
				pp=p30+p31;
				p1.value="";
				p1.value=pp;
			}
			}
		if(p.length>5){
			p11=p.substring(d1+1,d2);
			if(p11.length>3){
			p12=p11;
			l12=p12.length;
			l15=p.length
			p13=p11.substring(0,3);
			p14=p11.substring(3,l12);
			p15=p.substring(d2+1,l15);
			p1.value="";
			pp="("+p13+")"+p14+p15;
			p1.value=pp;
			}
			l16=p.length;
			p16=p.substring(d2+1,l16);
			l17=p16.length;
			if(l17>3&&p16.indexOf('-')==-1){
				p17=p.substring(d2+1,d2+4);
				p18=p.substring(d2+4,l16);
				p19=p.substring(0,d2+1);
			pp=p19+p17+"-"+p18;
			p1.value="";
			p1.value=pp;
			}
		}
		setTimeout(ValidatePhone,100)
	}

}

function sendThisPage() {
	document.location = "/email-this-page.cfm?page=" + document.location; 
}
