
var isNN = (navigator.appName.indexOf("Netscape")!=-1);
function autoTab(input, e) {
	len = input.getAttribute("maxlength");
	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(input.value.length >= len && !containsElement(filter,keyCode)) {
		input.value = input.value.slice(0, len);
		var element = findNextElement(input.getAttribute("tabindex"),input.form);
		element.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 findNextElement(index,tform) {
		elements = tform.elements;
		var lookFor = parseInt(index)+1;
    if(elements.length >= lookFor) {
    	for(i = 0; i <= elements.length; i++) {
    		element = elements[i];
        if(parseInt(element.getAttribute("tabindex")) == lookFor) {
          return element;
        }
      }
    }
    return elements[0];
	}
	return true;

}

function placeFocus() {
	if (document.forms.length > 0) {
		var field = document.forms[0];
		for (i = 0; i < field.length; i++) {
			if ((field.elements[i].type == "text")
					|| (field.elements[i].type == "textarea")
					|| (field.elements[i].type.toString().charAt(0) == "s")) {
				document.forms[0].elements[i].focus();
				break;
			}
		}
	}
}
