var slides = new Array();
var activeSshow = -1;
var activeSlide = new Array();
var slideImages = new Array();

var slideGroups = new Array();
var activeSgroup = -1;

function slide(dir) {  // slide
	if(dir>0) {  // next
		if(activeSlide[activeSshow] < slides[activeSshow].length) showSlide(activeSshow, activeSlide[activeSshow]+dir);
	}
	else {  // prev
		if(activeSlide[activeSshow]) showSlide(activeSshow, activeSlide[activeSshow]+dir);
	}
}

function showSlide(showId, slideId) {  // display a slide
	if(!slides.length || !slides[showId] || !slides[showId].length) return;
	activeSshow = showId;
	activeSlide[showId] = slideId;
	thisButtonStyle = slides[showId][slideId].split('~~')[2];
	setSlidebuttons(thisButtonStyle);
	for(var i=0; i<slides.length; i++) {
		if(activeSshow == i) continue;
		for(var j=0; j<slides[i].length; j++) {  // hide inactive slideshows
			document.getElementById('slide'+slides[i][j].split('~~')[0]).style.visibility = 'hidden';
			if (window.slideTexts && window.slideTexts[i]) {
				document.getElementById('para'+window.slideTexts[i]).style.display = 'none';
			}
		}
	}
	for(var i=0; i<slides[showId].length; i++) {
		thisSlide = slides[showId][i].split('~~')[0];
		if(activeSlide[showId] == i) {
			if(!slideImages[thisSlide] || slideImages[thisSlide].src) {
				slideImages[thisSlide] = new Image();
				slideImages[thisSlide].src = slides[showId][i].split('~~')[1];
			}
			if(document.images['img'+thisSlide]) document.images['img'+thisSlide].src = slideImages[thisSlide].src;
			if(document.getElementById('table'+thisSlide)) document.getElementById('table'+thisSlide).style.display='block';
			document.getElementById('slide'+thisSlide).style.visibility = 'visible';
			if (window.slideTexts && window.slideTexts[i]) {
				document.getElementById('para'+window.slideTexts[i]).style.display = 'block';
			}
			if(i<slides[showId].length-1) {
				nextSlide = slides[showId][i+1].split('~~')[0];
				nextImgSrc = slides[showId][i+1].split('~~')[1];
				slideImages[nextSlide] = new Image();
				slideImages[nextSlide].src = nextImgSrc;
			}
		}
		else {
			document.getElementById('slide'+thisSlide).style.visibility = 'hidden';  // hide inactive slides
			if(document.getElementById('table'+thisSlide)) document.getElementById('table'+thisSlide).style.display='none';
			if (window.slideTexts && window.slideTexts[i]) {
				document.getElementById('para'+window.slideTexts[i]).style.display = 'none';
			}
		}			
	}
	setInternallink();
}

function setSlidebuttons() {  // display slidebuttons
	sButtons = '<table class="slideButtons"><tr>';
	sButtonPrev = '<a href="javascript:slide(-1)"><img name="slideButtonPrevImg" src="'+docPath+'imgref/N_slide_prev_dark.gif/$FILE/slide_prev_dark.gif" alt="&lt;&lt;" width="23" height="23" border="0"></a>';
	sButtonNext = '<a href="javascript:slide(1) "><img name="slideButtonNextImg" src="'+docPath+'imgref/N_slide_next_dark.gif/$FILE/slide_next_dark.gif" alt="&gt;&gt;" width="23" height="23" border="0"></a>';

	if(!slides[activeSshow] || slides[activeSshow].length < 2) document.getElementById('slidebuttons').style.display = 'none';
	else document.getElementById('slidebuttons').style.display = 'block';
	
	if(activeSlide[activeSshow] == 0) sButtons += '<td><img src="/icons/ecblank.gif" width="23" height="23"></td>';
	else sButtons += '<td>'+sButtonPrev+'</td>';
	sButtons += '<td class="slideIndexActive">'+(activeSlide[activeSshow]+1)+'&nbsp;/&nbsp;'+slides[activeSshow].length+'</td>';
	if(activeSlide[activeSshow] < slides[activeSshow].length-1) sButtons += '<td>'+sButtonNext+'</td>';
	else sButtons += '<td><img src="/icons/ecblank.gif" width="23" height="23"></td>';
	sButtons += '</tr></table>';
	document.getElementById('slidebuttons').innerHTML = sButtons;
}

function setSlidebuttons1() {  // display slidebuttons google-style
	sButtons = '<table class="slideButtons"><tr>';
	sButtonPrev = '<a href="javascript:slide(-1)"><img name="slideButtonPrevImg" src="'+docPath+'imgref/N_slide_prev_dark.gif/$FILE/slide_prev_dark.gif" alt="&lt;&lt;" width="23" height="23" border="0"></a>';
	sButtonNext = '<a href="javascript:slide(1) "><img name="slideButtonNextImg" src="'+docPath+'imgref/N_slide_next_dark.gif/$FILE/slide_next_dark.gif" alt="&gt;&gt;" width="23" height="23" border="0"></a>';

	if(!slides[activeSshow] || slides[activeSshow].length < 2) document.getElementById('slidebuttons').style.display = 'none';
	else document.getElementById('slidebuttons').style.display = 'block';
	
	if(activeSlide[activeSshow] == 0) sButtons += '<td><img src="/icons/ecblank.gif" width="23" height="23"></td>';
	else sButtons += '<td>'+sButtonPrev+'</td>';
	for(var i=0; i<slides[activeSshow].length; i++) {
		if(i) sButtons += '<td class="slideIndexDivider">|</td>';
		if(i == activeSlide[activeSshow]) sButtons += '<td class="slideIndexActive">'+(i+1)+'</td>';
		else sButtons += '<td class="slideIndex" onclick="showSlide('+activeSshow+', '+i+')">'+(i+1)+'</td>';
	}
	if(activeSlide[activeSshow] < slides[activeSshow].length-1) sButtons += '<td>'+sButtonNext+'</td>';
	else sButtons += '<td><img src="/icons/ecblank.gif" width="23" height="23"></td>';
	sButtons += '</tr></table>';
	document.getElementById('slidebuttons').innerHTML = sButtons;
}

function jumpSlide(srcEl, paraId) {  // jump to slidegroup paragraph
	slideId = -1;
	thisNode = document.getElementById('slidegroup'+paraId);
	while(thisNode != null) {
		thisNode = thisNode.nextSibling;
		if(thisNode.id && thisNode.id.indexOf('slide') != -1) {
			slideId = thisNode.id;
			break;
		}
	}
	if(slideId != -1) {
		for(var i=0; i<slides.length; i++) {
			for(var j=0; j<slides[i].length; j++) {
				if('slide'+slides[i][j].split('~~')[0] == slideId) {
					showSlide(i, j);
				}
			}
		}
	}
}

function setInternallink() {  // hilight internal link
	if(activeSshow == activeSgroup) return;
	for(var i=0; i<document.links.length; i++) {
		thisLink = document.links[i];
		activeSlideLink = slideGroups[activeSshow];
		if(thisLink.className.indexOf('paragraphlink')!=-1) {
			if(activeSlideLink && thisLink.href.split('#').length==2 && thisLink.href.split('#')[1]==activeSlideLink) thisLink.className = 'paragraphlinkA';
			else thisLink.className = 'paragraphlink';
		}
	}
}

