var conc = new Object();

function concertina (number, way) {
	var id = "side" + number;
	var inid = "sidein" + number;
	var outid = "sideout" + number;
	var elm = document.getElementById(id);
	if (!elm)
		return;
	if (!conc[id])
		conc[id] = new Object();
	var pixels = 20;
	var min = 0;
	var max = -163;
	var ms = 30;
	var w = getNumber(elm.style.marginLeft);
	w = (!w) ? min : w;
	var off = (w == min) || (w == max);
	if (off || (way != conc[id].way)) { // start or reverse
		clearInterval(conc[id].int);
		conc[id].way = way;
		conc[id].int = setInterval('concertina(' + number + ', ' + way + ')', ms);
	}
	if (way == 1) { // open
		if (w > (max + pixels)) {
			elm.style.marginLeft = (w - pixels) + "px";
			var opacity = Math.abs((w - pixels) / max);
			document.getElementById(inid).style.opacity = 1 - opacity;
			document.getElementById(inid).style.filter = "alpha(opacity=" + Math.round((1 - opacity) * 100) + ")";
			document.getElementById(outid).style.opacity = opacity;
			document.getElementById(outid).style.filter = "alpha(opacity=" + Math.round(opacity * 100) + ")";
		} else if (w > max) {
			elm.style.marginLeft = max + "px";
			document.getElementById(inid).style.opacity = 0;
			document.getElementById(inid).style.filter = "alpha(opacity=0)";
			document.getElementById(outid).style.opacity = 1;
			document.getElementById(outid).style.filter = "alpha(opacity=100)";
		} else
			clearInterval(conc[id].int);
	} else if (way == -1) { // close
		if (w < (min - pixels)) {
			elm.style.marginLeft = (w + pixels) + "px";
			var opacity = Math.abs((w - pixels) / max);
			document.getElementById(inid).style.opacity = 1 - opacity;
			document.getElementById(inid).style.filter = "alpha(opacity=" + Math.round((1 - opacity) * 100) + ")";
			document.getElementById(outid).style.opacity = opacity;
			document.getElementById(outid).style.filter = "alpha(opacity=" + Math.round(opacity * 100) + ")";
		} else if (w < min) {
			elm.style.marginLeft = min + "px";
			document.getElementById(inid).style.opacity = 1;
			document.getElementById(inid).style.filter = "alpha(opacity=100)";
			document.getElementById(outid).style.opacity = 0;
			document.getElementById(outid).style.filter = "alpha(opacity=0)";
		} else
			clearInterval(conc[id].int);
	} else
		clearInterval(conc[id].int);
}