function openwin(page,id){
//alert(pid);
  //default window size
  x_res=480
  y_res=300
  //check for netscape and resize

  if (navigator.appName.indexOf("Netscape") >-1) {
    x_res=480
    y_res=400
  }

  window.open(page+'?id='+id,'_blank', 'title=window,menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=no,width='+x_res+',height='+y_res+',top=30,left=30');
}


// Call from template: onKeyPress="return autoMask(this,event,'type');
function autoMask(field, event, type){
								
var KeyTyped = String.fromCharCode(getKeyCode(event));
var targ = getTarget(event);
var keyCount = targ.value.length;				
				
// Determine type of input and setting mask pattern				
switch (type){
	case "phone":
	sMask = "###-###-####";
	break;
	case "date":
	sMask = "##/##/####";
	break;
	case "zip":
	sMask = "#####-#####";
	break;
	case "ssan":
	sMask = "###-##-####";
	break;
}
				
// Allows use of backspace and delete key once user has reached masks length
// Checks for a valid date
// disabled - Auto Tabs to next input

	if (getKeyCode(event) == 8 || getKeyCode(event)==127)
	{
		return true;
	}
	if(keyCount + 1 == sMask.length){
		if (type == "date"){
			if (chkdate(field) == false){
				alert("That date is invalid. Please try again.");
				return false;
				}
			}
			// this disabled - autoTab(field, event)
		}	
		
						
// Compares key typed to mask and allows entry if not equal to mask placeholder

	if ((sMask.charAt(keyCount+1) != '#') && (sMask.charAt(keyCount+1) != '@' )){							

			if (type == 'phone')
			{								
				if (keyCount > '11') // For Phone Field, don't let user type more than 12 total characters, including mask
				{								
				return false;
				}
			}
			
			if (type == 'zip')
			{
				if (keyCount > '9') // For Zip Code Field, don't let user type more than 10 total characters, including mask
				{
				return false;
				}
			}
			
			// this checks for the character before dash is entered, and prevents it.
			if (sMask.charAt(keyCount-1) && (!isNumber(KeyTyped)))
				{
				return false;
				}
				
			if (sMask.charAt(keyCount) == KeyTyped)
				{
				return true;
				}
			
									
		field.value = field.value + KeyTyped + sMask.charAt(keyCount+1);					
		return false;
		}
		
		if ((sMask.charAt(keyCount) == '#') || (sMask.charAt(keyCount) == '-'))
			{
			// adds the dash to phone number being inserted, if erased by user
			if (type == 'phone')
				{
					if ((keyCount == '3') || (keyCount == '7'))
					{
						if (isNumber(KeyTyped))
						{
						field.value = field.value + '-' + KeyTyped;
						}
						else
						{
						field.value = field.value + '-';
						}
					}
				}
				
			// adds the dash to ssn number being inserted, if erased by user
			if (type == 'ssan')
				{
					if ((keyCount == '3') || (keyCount == '6'))
					{
						if (isNumber(KeyTyped))
						{
						field.value = field.value + '-' + KeyTyped;
						}
						else
						{
						field.value = field.value + '-';
						}
					}
				}
				
			// adds the dash to zip being inserted, if erased by user
			if (type == 'zip')
				{
					if (keyCount == '5')
					{
						if (isNumber(KeyTyped))
						{
						field.value = field.value + '-' + KeyTyped;
						}
						else
						{
						field.value = field.value + '-';
						}
					}
				}
					
				
			}
							
								
	if ((sMask.charAt(keyCount) == '#') && isNumber(KeyTyped)){
			return true;			
			}

	if (KeyTyped.charCodeAt(0) < 32){
		return true;
		}
	
	return false;
}//close AutoMask function


function getTarget(e){

	if (e.srcElement){
		return e.srcElement;
		}
	if (e.target){
		return e.target;
		}
	}

function getKeyCode(e) {
	
	if (e.srcElement){ //IE
		return e.keyCode
		}
	else if (e.which){//NETSCAPE
		return e.which
		}
	else if (e.target){//FIREFOX
	   return e.which
		}
	}

function isNumber(n){
	var sNumbers = "01234567890";
	if (sNumbers.indexOf(n) == -1){
	alert('Enter numbers only.');
	return false;
	}
	else return true;
	}

//AutoTab Function

var isNN = (navigator.appName.indexOf("Netscape")!=-1);

function autoTab(input, e){
	
	var keyCode = (isNN) ? e.which : e.keyCode; 
	var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];

	if(!containsElement(filter,keyCode)){
		input.form[(getIndex(input)+1) % input.form.length].focus();
		}
	

function containsElement(arr, ele) {
	
	var found = false, index = 0;
	
	while(!found && index < arr.length)

	if(arr[index] == ele){
		found = true;
		}
	else
		index++;
		return found;
}

function getIndex(input){
	
	var index = -1, i = 0, found = false;

	while (i < input.form.length && index == -1)

	if (input.form[i] == input){
		index = i;
		}
	else i++;
	return index;
	}

return true;
}//close AutoTab function
