var tabOnClass = "tab-on";
var tabOffClass = "tab-off";
var tabTxt = "tab-txt";
var parentClass = "tab-panel";

var tabTxtOnClass = " tab-txt-on";
var tabTxtOffClass = "tab-txt-off";

function buildTabs(selectedTab) {
    for (var i = 0; i < tabs.length; i++) {
        if (tabs[i].parent == -1) {
            if( tabs[i].leftNavLink ) {
                $('#tabs').append(
                        '<div id="tab-' + i
                                + '" class="' + tabOffClass + " " + tabTxtOffClass + '" ><div class="' + tabTxt + '"><a href="' + tabs[i].leftNavLink + '"'
                                + ' >' + tabs[i].name
                                + '</a></div></div>');
            } else {
                $('#tabs').append(
                        '<div   id="tab-' + i
                                + '" class="' + tabOffClass + " " + tabTxtOffClass + '" onclick="setTab(' + i
                                + ')" ><div class=" ' + tabTxt
                                + '" >' + tabs[i].name
                                + '</div></div>');
            }
        }
    }

    var start = false;
    var subTab = "";
    var currentParent="";
    for (i = 0; i < tabs.length; i++) {
        if (tabs[i].parent != -1) {
            if (!start) {
                currentParent = '#tab-' + tabs[i].parent;
                subTab = "a-" + tabs[i].idx;
                $(currentParent)
                        .after(
                                '<div id="'
                                        + subTab
                                        + '" class="tab-panel" style="display:none;"></div>');
                start = true;
            }
            if( tabs[i].leftNavLink ) {
                $('#' + subTab).append(
                        '<div id="tab-' + i + '" class=" ' + tabTxt
                                + ' ' + tabTxtOffClass
                                + '"><a href="' + tabs[i].leftNavLink + '">'
                                + tabs[i].name + '</a></div>');
            } else {
                $('#' + subTab).append(
                        '<div id="tab-' + i + '" class=" ' + tabTxt
                                + ' ' + tabTxtOffClass
                                + '" onclick="setTab(' + i + ')">'
                                + tabs[i].name + '</div>');
            }
        } else {
            start = false;
        }
    }
    $('#tab-content').children().hide();
    $('#tab-content-0').show();
    $('.tab-panel').children().css('background-color', '#bbddea');
    $('.tab-panel div:last-child').addClass("last");
}

function setTab(idx) {
//    alert("SetTab: " + idx);
	if (tabs[idx].parent == -1) {
		$('#tabs').children().removeClass(tabTxtOnClass);
		$('#tabs').children().removeClass(tabOnClass);
		$('#tabs').children().addClass(tabOffClass);
		$('#tabs').children().addClass(tabTxtOffClass);
		$('#tab-' + idx).removeClass(tabOffClass);
		$('#tab-' + idx).removeClass(tabTxtOffClass);
		$('#tab-' + idx).addClass(tabOnClass);
		$('#tab-' + idx).addClass(tabTxtOnClass);
		hide();
		if (tabs[idx].children) {
			expand(idx + 1);
		}
	} else {
        setTab(tabs[idx].parent);
		for (var i = 0; i < tabs.length; i++) {
			if (tabs[i].parent == -1) {
				$('#tab-' + i).removeClass(tabTxtOnClass);
                if( !$('#tab-' + i).hasClass(tabTxtOffClass) ) {
                    $('#tab-' + i).addClass(tabTxtOffClass);
                }
			}
		}
		$('#tab-' + idx).removeClass(tabTxtOffClass);
		$('#tab-' + idx).addClass(tabTxtOnClass);
	}
	switchContent(idx);
}

function switchContent(idx) {
	$('#tab-content').children().hide();
	$('#tab-content-' + idx).show();
}

function expand(idx) {
	$('#a-' + idx).css('opacity', '0');
	$('#a-' + idx).css('display', 'block');
	$('#a-' + idx).animate({
		opacity : 1
	}, 700, function() {

	});
}

function hide() {
	$('.tab-panel').css('display', 'none');
}

