/* Slide Show */
function startSlideshow(slideGroupName, startFrame, endFrame, delay) {
    setTimeout(switchSlide(slideGroupName, startFrame, startFrame, endFrame, delay), delay);
}

function switchSlide(slideGroupName, frame, startFrame, endFrame, delay) {
    return (
        function() {
            switchPage(slideGroupName, frame, endFrame);
            frame = (frame == endFrame) ? startFrame : frame + 1;
            setTimeout(switchSlide(slideGroupName, frame, startFrame, endFrame, delay), delay + 850);
        }
    );
}

function switchPage(slideGroupName, pageId, pageCount) {
    for (i = 0; i <= pageCount; i++) {
        if (i == pageId) {
            Element.show(slideGroupName + '_page_' + i);
            Element.addClassName(slideGroupName + '_link_' + i, 'active');
        } else {
            Element.hide(slideGroupName + '_page_' + i);
            if (Element.hasClassName(slideGroupName + '_link_' + i, 'active')) {
                Element.removeClassName(slideGroupName + '_link_' + i, 'active');
            }
        }
    }
}
