var confeHomePageTabs = {};
var CONFEHomePageTabs = confeHomePageTabs;

confeHomePageTabs.init = function () {
	var con = document.getElementById('home-tasks'), dl = [];

	var nl = [
		document.getElementById('tab-content-0'),
		document.getElementById('tab-content-1'),
		document.getElementById('tab-content-2')
	];

	for (var i = 0; i < nl.length; i++) {
		if (nl[i].nodeName.toLowerCase() == 'div') dl[dl.length] = nl[i];
	}

	for (var i = 1; i < dl.length; i++) {
		dl[i].style.display = 'none';
	}

};

confeHomePageTabs.deleteClassName = function (obj, c) {
	var re = new RegExp("\\s?" + c);
	obj.className = obj.className.replace(re, "");
};

confeHomePageTabs.inClass = function (obj, c) {
	var re = new RegExp("\\s?" + c + "\\s?");
	return re.test(obj.className);
};

confeHomePageTabs.getElementsInClass = function (el, cn) {
	var nl = [];
	if (typeof el.nodeType == 'undefined') return nl;

	switch (el.nodeType) {
	// ELEMENT_NODE, DOCUMENT_NODE, DOCUMENT_FRAGMENT_NODE
	case 1: case 9: case 11:
		if (confeHomePageTabs.inClass(el, cn)) nl[nl.length] = el;
		if (el.hasChildNodes()) {
			var elc = el.childNodes;
			var len = elc.length;
			for (var i = 0; i < len; i++)
				nl = nl.concat(confeHomePageTabs.getElementsInClass(elc.item(i), cn));
		}
		break;
	}
	return nl;
};

confeHomePageTabs.deactivateAll = function () {
	var el, con = document.getElementById('home-tasks');

	if (con == null) return;

	var nl = confeHomePageTabs.getElementsInClass(con, 'tab-active');
	for (var i = 0; i < nl.length; i++) {
 		confeHomePageTabs.deleteClassName(nl[i], 'tab-active');
		if (nl[i].nodeName.toLowerCase() == 'div')
			nl[i].style.display = 'none';
	}
};

confeHomePageTabs.setActive = function (ref, id) {
	var nl, pn = ref.parentNode;

	if (!confeHomePageTabs.inClass(pn, 'tab-active')) {
		confeHomePageTabs.deactivateAll();
		pn.className += ' tab-active';
		document.getElementById(id).className += ' tab-active';
		document.getElementById(id).style.display = 'block';
	}
};

confeHomePageTabs.delay = 600;

confeHomePageTabs.delayedSetActive = function (ref, id) {
	ref._timerId = window.setTimeout(function () {
			confeHomePageTabs.setActive(ref, id);
		}, confeHomePageTabs.delay);
};

confeHomePageTabs.cancelSetActive = function (ref) {
	if (ref._timerId) window.clearTimeout(ref._timerId);
	ref._timerId = null;
};
