function goodchars(e, goods) {
	var key, keychar;
	key = getkey(e);
	if (key == null) return true;
	keychar = String.fromCharCode(key);
	keychar = keychar.toLowerCase();
	goods = goods.toLowerCase();
	if (goods.indexOf(keychar) != -1)
		return true;
	if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 )
		return true;
	return false;
}
function getkey(e)
{
	if (window.event)
		return window.event.keyCode;
	else if (e)
		return e.which;
	else
		return null;
}
function getBrowser() {
    brs=navigator.userAgent.toLowerCase();
    var retval;
    if (brs.search(/msie\s(\d+(\.?\d)*)/)!=-1) {
        retval='msie';
    } else if (brs.search(/netscape[\/\s](\d+([\.-]\d)*)/)!=-1) {
        retval='netscape';
    } else if (brs.search(/firefox[\/\s](\d+([\.-]\d)*)/)!=-1) {
        retval='firefox';
    } else {
        retval='unknown';
    }
    return retval;
}
function checkKeyPress(ev, obj, allowDot) {
    var keyCode = null;
    if ( getBrowser()=='msie' ) {
        keyCode = window.event.keyCode;
    } else if ( getBrowser()=='netscape' || getBrowser()=='firefox' ) {
        keyCode = ev.which;
    }
    var keyAllowed = true;
    if (keyCode==8||keyCode==9) {
        retval = true;
    } else {
		if (allowDot)
			keyAllowed =  ((keyCode >= 48) && (keyCode <= 57) || keyCode == 46)
		else
			keyAllowed = (keyCode >= 48) && (keyCode <= 57)

	    if (!keyAllowed) {
    	    if ( getBrowser()=='msie' ) {
        	    window.event.keyCode=0;
	        } else if ( getBrowser()=='netscape' || getBrowser()=='firefox' ) {
    	        ev.preventDefault();
        	    ev.stopPropagation();
            	ev.returnValue=false;
	        }
    	}
		   return false;
	}
}
function validate_email(input) {
	s= input.value
	if(s.search) {
		return (s.search(new RegExp("^([-!#$%&'*+./0-9=?A-Z^_`a-z{|}~])+@([-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+\\.)+[a-zA-Z]{2,4}$","gi"))>=0)
	}
	if(s.indexOf) {
		at_character=s.indexOf('@')
		if(at_character<=0 || at_character+4>s.length)
			return false
	}
	if(s.length<6)
		return false
	else
		return true
}