IE = (navigator.userAgent.indexOf("MSIE") != -1);

removeClassName = function(node, cName) {
	var re = new RegExp("\\b" + cName + "\\b", "gi");
	node.className = node.className.replace(re, "");
	node.className = node.className.replace("(\s+)", " ");	
}
matchClassName = function ( node, className ) {
	var re = new RegExp ("\\b" + className + "\\b", "g" );
	return node.className.match( re );
}

function attachHandler(o, e, f) { 
  return((o.attachEvent) ? o.attachEvent(e, f) : ((o.addEventListener) ? 
    o.addEventListener(e.substr(2), f, false) : false));
}


openSubMenu = function(node){

	while ( node.nextSibling ) {
		if ( node.nextSibling.className && matchClassName( node.nextSibling, "subMenuContainer") ) {
			if ( !matchClassName( node.nextSibling, "hiddenBlock") ) {
				node.nextSibling.className += " hiddenBlock";
				
			} else {
				removeClassName (node.nextSibling, "hiddenBlock");
			}
			break;
		} else {
			if ( node.nextSibling.className && matchClassName( node.nextSibling, "menuItem") ) return;
			var node = node.nextSibling;
		}
	}

}

initSubMenu = function(){
	for ( var i=0, l=arguments.length; i<l; i++){
		var tmpNode = document.getElementById(arguments[i]);
		if ( tmpNode ) openSubMenu( tmpNode );
	}
}

stopPropagation = function(e){
	if ( e ) {
		e.stopPropagation();
	} else {
		event.cancelBubble = true;
	}
}

smartInputValue = function( node ) {
	if ( !node.defVal )	{
		node.defVal = node.value;
		attachHandler( node, "onblur", smartInputValueOnBlur );
	}
	if ( node.value == node.defVal ) node.value = "";
}
smartInputValueOnBlur = function() {
	var obj = (IE)? event.srcElement : this;
	if ( obj.defVal && obj.value == "") obj.value = obj.defVal; 
}

function IsEmailValid(email){
	var reg = /^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})$/i;
	if(reg.test(email)) return true;
	else return false;
}