var timer1,fade,currpicno,fadeto,fadefrom,nextpicture,nextpicturewidth;
function changeOpac(id, opacity) { 
    var object = document.getElementById(id).style; 
    object.opacity = (opacity / 100); 
    object.MozOpacity = (opacity / 100); 
    object.KhtmlOpacity = (opacity / 100); 
    object.filter = "alpha(opacity=" + opacity + ")";
} 
function nextpicno(picarray) {
    var ret = currpicno + 1;
    if (ret == picarray.length) ret = 0;
 	return ret;
}
function dofade() {
  fade = fade + 1;
  if (fade > 10) {
	clearInterval(timer1);
    document.getElementById(fadeto).style.zIndex=2; 
    document.getElementById(fadefrom).style.zIndex=1;
    document.getElementById(fadefrom+"i").src = nextpicture;
	document.getElementById(fadefrom).style.width = nextpicturewidth;
  } else {
	changeOpac(fadeto, fade*10);
	changeOpac(fadefrom, 100-(fade*10));
	document.getElementById(fadeto).style.display = "inline";
  }
}
function changepic(picto, picfrom, picarray, insarray, tutorial, step, container) {
  document.getElementById(picto+"i").src = 'images/tutorials/'+picarray[currpicno][0];
  //document.getElementById(picto).style.width = picarray[currpicno][1];
  document.getElementById(tutorial).innerHTML = insarray[currpicno];
  document.getElementById(step).innerHTML = "("+(currpicno+1)+" of "+picarray.length+")";
  //document.getElementById(container).style.width = picarray[currpicno][1]+'px';
  document.getElementById(container).style.height = picarray[currpicno][2]+'px';
  fade=0;
  fadeto = picto;
  fadefrom = picfrom;
  nextpicture = 'images/tutorials/'+picarray[nextpicno(picarray)][0];
  nextpicturewidth = picarray[nextpicno(picarray)][1]+'px';
  timer1 = setInterval("dofade()", 40);
}
function nextpic(next, picinfo, picids, picarray, insarray) {
  currpicno = picinfo[0];
  picno = picinfo[1];
  if (next) {
    currpicno = currpicno + 1;
    if (currpicno == picarray.length) currpicno = 0;
  } else {
    currpicno = currpicno - 1;
    if (currpicno < 0) currpicno = picarray.length -1;
  } 
  if (picinfo[1]==0) {
    picinfo[1]=1;
    changepic(picids[1], picids[0], picarray, insarray, picids[2], picids[3], picids[4]);
  } else {
    picinfo[1]=0;
    changepic(picids[0], picids[1], picarray, insarray, picids[2], picids[3], picids[4]);
  }
  return [currpicno, picinfo[1]];
}