// JavaScript Document

window.onpageshow = function (evt) {
    if (evt.persisted) window.onload();
}

function moveStoryPointer (magnitude) {
    var current, last;
    var cVal, lVal, ocVal;

    current = document.getElementById("story_pointer");
    last    = document.getElementById("last_story_id");

    if (current && last) {
	cVal  = parseInt(current.value);
	ocVal = cVal;
	lVal  = parseInt(last.value);

	cVal += magnitude;
	if (cVal < 0) cVal = 0;
	if (cVal > (lVal - 3)) cVal = (lVal - 3);

	current.value = cVal;
    }
    if (cVal != ocVal) {
	hideStories();
	colorNavLinks(cVal, lVal);
    }
}

function colorNavLinks (cVal, lVal) {
    var nxt, prv;
    var activeColor, disabledColor;

    activeColor   = "#333333";
    disabledColor = "#cccccc";

    nxt = document.getElementById("rss_nav_next");
    prv = document.getElementById("rss_nav_prev");

    if (nxt && prv) {
        if (cVal == (lVal-3)) {
	    nxt.style.color = disabledColor;
	    prv.style.color = activeColor;
        }
        else if (cVal == 0) {
	    nxt.style.color = activeColor;
	    prv.style.color = disabledColor;
	}
	else {
	    nxt.style.color = activeColor;
	    prv.style.color = activeColor;
        }
    }
}

function hideStories() {
    var i, last, current, story;
    var cVal, lVal;

    current = document.getElementById("story_pointer");
    last    = document.getElementById("last_story_id");

    if (current && last) {
	cVal = parseInt(current.value);
	lVal = parseInt(last.value);
	for (i = 0; i < lVal; i++) {
	    story = document.getElementById("rss_story_"+i);
	    if (story) {
		if (i >= cVal && i < (cVal + 3)) {
		    story.style.display = 'block';
		}
		else {
		    story.style.display = 'none';
                }
	    }
	}
    }
}

