// id zobrazene aktuality
var activeContent = false;
// pole s idcky postupne zobrazovanych aktualit
var contentArray = new Array;
// ukazatel na nastaveny interval pro automatickou zmenu
var automaticTimeout = false;
// stav tlacitka pauza (false...automatika bezi, true...automatika je pauznuta)
var buttonState = false;
// doba mezi automatickou zmenou aktualit v milisekundach
var delayLength = 8000;

$(document).ready(function() {
    
    if ($("#aktuality_plus").attr("id")) { // test zda jsme na strance ktera obsahuje aktuality plus, jinak se nic nespousti

	// obsluha manualniho kliknuti na nekterou z aktualit v pravem panelu
	$("#aplus_panel .aplus_odkaz").click(function() {
	    var id = $(this).attr("id");
	    id = id.replace(/aplus_odkaz_/, "");
	    if (id) setActiveLink(id);
	});

	// obsluha kliknuti na tlacitko pauza/prehrat
	$("#aplus_panel #aplus_pauza_button").click(function() {
	    if (!buttonState) {
		$(this).html("přehrát");
		clearTimeout(automaticTimeout);
		buttonState = true;
	    } else {
		$(this).html("pauza");
		buttonState = false;
		automaticTimeout = setInterval("setNextContent()", delayLength);
	    }
	});

	// inicializace idcka prvni vybrane aktuality
	activeContent = getShownContentId();
	// inicializace poli idecek aktualit
	contentArray = getContentArray();

	// nastaveni automatickeho intervalu
	automaticTimeout = setInterval("setNextContent()", delayLength);
    }
});

// zobrazi aktualitu daneho id + nastavi ze je vybrana i v pravem panelu
function setActiveLink(id) {
    if ((activeContent && id) && (activeContent != id)) {
	showContent(activeContent, id);
	unsetActiveLinks();
	identifikator = "#aplus_panel #aplus_odkaz_" + id;
	var oldClass = $(identifikator).attr("class");
	if (oldClass != "") oldClass += " active"; else oldClass = "active";
	$(identifikator).attr("class", oldClass);
	activeContent = id;
    }
}

// vsem odkazum na aktuality v pravem panelu odstrani priznak active (zadna nebude vybrana)
function unsetActiveLinks() {
    $("#aplus_panel .aplus_odkaz").each(function() {
	var oldClass = $(this).attr("class");
	if (oldClass.indexOf(" active") != "-1") {
	    oldClass = oldClass.replace(/ active/, "");
	    $(this).attr("class", oldClass);
	}
    });
}

// vybere prvni aktualitu, ta je na zobrazena v pocatecnim stavu
function getShownContentId() {
    var id = $("#aplus_content .aktualita_plus").first().attr("id");
    id = id.replace(/aplus_/, "")
    return id;
}

// zjisti jake aktuality se budou postupne stridat, vraci jejich idcka v poli
function getContentArray() {
    var contArr = new Array;
    var i = 0;

    $("#aplus_content .aktualita_plus").each(function() {
	var hlpid = $(this).attr("id");
	hlpid = hlpid.replace(/aplus_/ ,"");
	if (hlpid) {
	    contArr[i] = hlpid;
	    i++;
	}
    });

    return contArr;
}

// prepne pohled na aktualitu (original je id puvodni aktuality, newone nove aktuality)
function showContent(original, newone) {
    var originallink = "#aplus_panel #aplus_vice_" + original;
    var newonelink = "#aplus_panel #aplus_vice_" + newone;
    
    original = "#aplus_content #aplus_" + original;
    newone = "#aplus_content #aplus_" + newone;
    $(original).fadeOut("fast", function() {
	$(newone).fadeIn("fast");
    });
    $(originallink).fadeOut("fast", function() {
	$(newonelink).fadeIn("fast");
    });
}

// prepne na dalsi aktualitu
function setNextContent() {
    var actualIndex = -1;
    
    for (var i = 0; i < contentArray.length; i++) {
	if (contentArray[i] == activeContent) actualIndex = i;
    }

    if (actualIndex != -1) {
	var newIndex = actualIndex + 1;
	if (newIndex > (contentArray.length -1)) newIndex = 0;
	if (contentArray[newIndex] != activeContent) setActiveLink(contentArray[newIndex]);
    }
}