var psrc = new Array("Yate.white.lion.arp.jpg", "Saracens_Head_pub_sign.jpg", "Coca-Cola_Glas_mit_Eis.jpg", "Winterbourne.wheatsheaf.arp.jpg", "Spanish_Galleon_Tavern.jpg", "Almondsbury.bowl.arp.jpg", "Fuller%27s_IPA.JPG", "Sunday_roast_-_roast_beef_1.jpg", "Lunch_%28516912681%29.jpg", "The_Queens_Arms_pub_-_Charlotte_Street_-_Birmingham_-_2005-10-14.jpg", "Raw_vegan_lunch.jpg", "The_Trout_Inn_Wolvercote.jpg", "TheGreyhoundCarshalton.jpg", "BLT_sandwich_1.jpg", "Llandoger.trow.overall.arp.jpg", "The_Crab_Cooker_%28lunch%29.jpg", "Erdbeere_Senga_Sengana.JPG", "PintJug.jpg", "The_Turks_head_St_Helens_Merseyside.jpg","Tasse_Kaffee.jpg", "Beer_taps.jpg", "8-Ball.jpg", "Camra_bar_towel.JPG", "Nakr%C3%A1jen%C3%A1_raj%C4%8Data_a_sal%C3%A1tov%C3%A1_okurka.jpg", "Slide-mille-feuille.jpg","Brausetablette.JPG");
var psrc2 = new Array();
var pimg = new Array();
var sroot = '/pubstop/pub-bg-img/';
var slidx = 0;
var slidop = 0;
var loadslide=0;
var slidetime = 12000;
var ssclock=false;
var slidt=false;
var loadtime=false;

function initSlides() {
	psrc = arrayShuffle(psrc);
	document.getElementById('ss').innerHTML = '<p id="slideshow"><img id="fslide" src="'+sroot+psrc[0]+'" width="640" height="240" alt="" /></p>\n<p id="photocredit">&nbsp;</p>';
	loadSlide(0);
}

function stopSlides() {
	if (ssclock) clearInterval(ssclock);
	if (slidt) clearInterval (slidt);
	if (loadtime) clearTimeout(loadtime);
	ssclock = false;
	slidt = false;
	loadtime = false;
}

function loadSlide(i) {
	if (i<psrc.length) {
		pimg[i] = new Image(640,240);
		pimg[i].src = sroot+psrc[i];
		pimg[i].onload = function() { addSlide(this.src); };
		var delay = (i==0) ? 100 : slidetime;
		i++;
		loadtime = setTimeout("loadSlide("+i+")",delay);
	}
	else {
		loadtime = false;
	}
}

function switchSlide() {
	with (document.getElementById('fslide')) {
		src = psrc2[slidx];
		style.opacity = '1';
		style.filter = 'alpha(opacity=100)';
	}
	slidx = (slidx+1) % psrc2.length;
	document.getElementById('slideshow').style.backgroundImage = 'url('+psrc2[slidx]+')';
	slidop = 100;
	slidt = setInterval("fadeSlide()",50);
	document.getElementById('photocredit').innerHTML = '&nbsp;';
}

function fadeSlide() {
	slidop = slidop-5;
	if (slidop<0) slidop=0;
	with (document.getElementById('fslide')) {
		style.opacity = slidop/100;
		style.filter = 'alpha(opacity='+slidop+')';
	}
	if (slidop==0) {
		clearInterval(slidt);
		slidt = false;
		document.getElementById('photocredit').innerHTML = photoCredit(psrc2[slidx]);
	}
}

function photoCredit(s) {
	var f = s.substr(s.indexOf(sroot)+sroot.length);
	return '<a href="http://commons.wikimedia.org/wiki/File:'+f+'">Photo credit</a>';
}

function addSlide(s) {
	psrc2[psrc2.length] = s;
	if (psrc2.length==1) {
		document.getElementById('slideshow').style.backgroundImage = 'url('+s+')';
		document.getElementById('photocredit').innerHTML = photoCredit(psrc2[0]);
	}
	if (psrc2.length>1 && !ssclock) {
		ssclock = setInterval("switchSlide()",slidetime);
	}
}

function arrayShuffle(a) {
	var i, j, t;
	var n = a.length;
	if (n<2) return a;
	for (i=0; i<a.length; i++) {
		j = Math.floor(Math.random() * n);
		t = a[i];
		a[i] = a[j];
		a[j] = t;
	}
	return a;
}
