function getElementsByClassName(oElm, strTagName, oClassNames){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	var arrRegExpClassNames = new Array();
	if(typeof oClassNames == "object"){
		for(var i=0; i<oClassNames.length; i++){
			arrRegExpClassNames.push(new RegExp("(^|\s)" + oClassNames[i].replace(/-/g, "\-") + "(\s|$)"));
		}
	}
	else{
		arrRegExpClassNames.push(new RegExp("(^|\s)" + oClassNames.replace(/-/g, "\-") + "(\s|$)"));
	}
	var oElement;
	var bMatchesAll;
	for(var j=0; j<arrElements.length; j++){
		oElement = arrElements[j];
		bMatchesAll = true;
		for(var k=0; k<arrRegExpClassNames.length; k++){
			if(!arrRegExpClassNames[k].test(oElement.className)){
				bMatchesAll = false;
				break;
			}
		}
		if(bMatchesAll){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
};
function Expando(srcEl){   
    var srcEl=document.getElementById(srcEl);
    if(srcEl.className=="submenu"){
        srcEl.className="submenu1";
    }else{
        srcEl.className="submenu";
    }        
}


//for testing only//
function ExpandoAnim(srcEl){   
    var srcEl=document.getElementById(srcEl);
    var clippedD=getElementsByClassName(srcEl, "div", "clipped");
    if(srcEl.className=="exp_off"){
        srcEl.className="exp_on";
        targetH=clippedD[0].offsetHeight;
        clippedD[0].style.clip="rect(0 770px 0 0)";
        animatedDrop(srcEl,targetH, 0)
    }else{
        srcEl.className="exp_off";
    }        
}

function animatedDrop(srcEl,targetH,iniH){
    var clippedD=getElementsByClassName(srcEl, "div", "clipped");
    var animD=getElementsByClassName(srcEl, "div", "animator");
    if((targetH-iniH)>1){
        diff=(targetH-iniH)/7;
        iniH+=diff;
        clippedD[0].style.clip="rect(0 770px "+iniH+"px 0)";
        clippedD[0].style.marginTop=-iniH+"px"; 
	    animD[0].style.height=iniH+"px";
	    setTimeout(function(){animatedDrop(srcEl, targetH, iniH)}, 5);
	}
	//else{
	//    animDiv[eIndex].style.height=heightt+"px";
	//}
}



function expandContent(eventType){
    if(typeof eventType.srcElement!="undefined"){
		var expandT=eventType.srcElement;
	} else {
		var expandT=this;
	}
	if(expandT.className=="expandoTitleInvis"){
	    newClassT="expandoTitleVis";
	}else{
	    newClassT="expandoTitleInvis";
	}
	animDiv=getElementsByClassName(expandoDiv, "div", "animator");
	for(var titleI=0;titleI<titleDiv.length;titleI++){
	    if(titleDiv[titleI]==expandT){
	        titleDiv[titleI].className=newClassT;
	        if(newClassT=="expandoTitleVis"){
	            var cheight=contDiv[titleI].offsetHeight+10;
	            iniH=0;
                animatedDrop(0, cheight, titleI);
    	    }else{
    	        titleDiv[titleI].className=newClassT;
    	        contDiv[titleI].style.clip="rect(0 770px 0 0)";
    	        animDiv[titleI].style.height=0;
    	        animDiv[titleI].style.display="none"
    	    }
	    }
	}
}
function animatedDrop2(iniH, heightt, eIndex){
    animDiv=getElementsByClassName(expandoDiv, "div", "animator");
    if((heightt-iniH)>1){
        diff=(heightt-iniH)/7;
        iniH+=diff;
        contDiv[eIndex].style.clip="rect(0 770px "+iniH+"px 0)"; 
	    animDiv[eIndex].style.height=iniH+"px";
	    setTimeout(function(){animatedDrop(iniH, heightt, eIndex)}, 5);
	}else{
	    animDiv[eIndex].style.height=heightt+"px";
	}
}