var is_opera = (navigator.userAgent.indexOf('Opera')!=-1);
var is_ie = (!is_opera && navigator.userAgent.indexOf('MSIE')!=-1);

function addEvent(obj, evType, fn, useCapture) {
	if (obj.addEventListener) {
		obj.addEventListener(evType,fn,useCapture);
		return true;
	} else if(obj.attachEvent){
		return obj.attachEvent("on"+evType,fn);
	} else {
		return false;
	}
}

function getElementsByClass(searchClass, aNode, tag) {
	var classElements = new Array();
	if (aNode == null) var aNode = document;
	if (tag == null) tag = '*';
	var aElems = document.getElementsByTagName(tag);
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	var i = 0;
	for (var j = 0; j < aElems.length; j++) {
		if ( pattern.test(aElems[j].className) ) {
			classElements[i++] = aElems[j];
		}
	}
	return classElements;
}

function getFirstElementByClass(searchClass,node,tag) {
	if (node == null) node = document;
	if (tag == null) tag = '*';
	var aElems = getElementsByClass(searchClass, node, tag);
	if (aElems.length > 0) return aElems[0];
	return null;
}

function toggleDisplayById(id) {
	var obj = document.getElementById(id);
	if (!obj) return;
	toggleDisplay(obj);
}

function toggleDisplay(obj) {
	obj.style.display=(obj.offsetHeight)?"none":"block";
}

function tabbed() {
	var multitab = getElementsByClass("multitab", document);
	if (multitab) {
		for(i in multitab) {
			var tabbed = getFirstElementByClass('tabbed', multitab[i]);
			var a = tabbed.getElementsByTagName('a');
			for(j in a) {
				a[j].onclick = function() {this.blur(); return false;}
			}
			
			var li = tabbed.getElementsByTagName('li');
			for(j in li) {
				li[j].onclick = function() {
					var _li = childNodesByTagName(this.parentNode, "LI");
					var _tab = childNodesByClass(this.parentNode.parentNode.parentNode, "tab");

					/*
					var _li = this.parentNode.getElementsByTagName('li');
					var _tab = getElementsByClass('tab',this.parentNode.parentNode.parentNode);
					*/
					for(var i=0; i <_li.length; i++) {
						if( _li[i] != this) {
							_li[i].className="";
							if(_tab[i])_tab[i].style.display = "none";
						} else {
							_li[i].className="active";
							if(_tab[i])_tab[i].style.display = "block";
						}
					}
				}
			}
		}
	}
}
addEvent(window, 'load', tabbed);

function childNodesByTagName(node, tagName) {
	var ret = [];
	var _nodes = node.childNodes;
	for( var i = 0; i < _nodes.length; i++ ) {
		if (_nodes[i].tagName == tagName ) {
			ret.push( _nodes[i] );
		}
	}
	return ret;
}

function childNodesByClass(node, searchClass) {
	var ret = [];
	var _nodes = node.childNodes;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for( var i = 0; i < _nodes.length; i++ ) {
		if ( pattern.test(_nodes[i].className) ) {
			ret.push( _nodes[i] );
		}
	}
	return ret;
}

// csak az elso vált:
function tabbedSwitch( i ) {
	var multitab = getFirstElementByClass("multitab");
	var li = multitab.getElementsByTagName('li');
	if (li.length < i) return false;
	li[i-1].onclick();
}
