// marco tarini

var posCurrentX = 0;
var posCurrentY = 0;
var posWantedX = 0;
var posWantedY = 0;

var videoNumber = new Array(
  0,
  24516337,// jennifer e mark foto
  22026276,// alessio e dominica festa
  32441324,//milena e giuseppe
  35270695,// eleonora e giacomo intro
  20845229,//sara e federico preparativi
  20826053, // sara e federico foto 2
  35739685, // eleonora e giacomo foto
  26368257, // sara e federico foto 1
  20872212, //lara e david foto
  20814715,  //alessio e dominica foto
  20801020, // alessio e dominica preparativi
  22021275, // claudia e aldo
  22020698 // olivia e joseph
);

function f_scrollX() {
	return f_filterResults (
		window.pageXOffset ? window.pageXOffset : 0,
		document.documentElement ? document.documentElement.scrollLeft : 0,
		document.body ? document.body.scrollLeft : 0
	);
}
function f_scrollY() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}
function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}


var destX = new Array(0,-1350);
var destY = new Array(
  new Array(0,-850),
  new Array(0,-850)
);
function swapY(x){
  var tmp;
  tmp = destY[x][0]; destY[x][0]=destY[x][1]; destY[x][1] = tmp;
  var pA = document.getElementById("page0"+x);
  var pB = document.getElementById("page1"+x);
  var mtA = pA.style.marginTop;
  var mtB = pB.style.marginTop;
  pA.style.marginTop = "0 px"; //mtB;
  pB.style.marginTop = "0 px"; //mtA;
  //pB.style.visibility="hidden";
  //pA.style.visibility="hidden";
}

var curX =0;
var curY =0;

function moveTo( x,y ) {
  if (curX!=x && destY[curX][curY]!=destY[x][y]) {
    //swapY(x);
  }
  posWantedX = destX[x];
  posWantedY = destY[x][y];
  posCurrentX = -f_scrollX();
  posCurrentY = -f_scrollY();
  resetLines();
  doSetLines();
  pauseVideo();  
  curX = x; 
  curY = y;
}

var line0=0,line1=0,line2=0,line3=0,line4=0,line5=0,line6=0;
var line0max=400;
var line1max=600;
var line2max=600;
var line3max=240;
var line4max=460;
var line5max=518;
var line6max=460;

function pauseVideo(){
  moogaloop = document.getElementById("videoDiv");
  moogaloop.api_pause();
}

function playVideo(){
  moogaloop = document.getElementById("videoDiv");
  moogaloop.api_play();
}

function showVideo(k){
  moogaloop = document.getElementById("videoDiv");
  if (k>0) putVideoOn(videoNumber[k]);
  playVideo();
  //moogaloop.flashvars.clip_id = ;
	
  //var i;
  //for(i=1;i<=15;i++){
  //document.getElementById("video"+i).style.visibility=(i==k)?"visible":"hidden";
  //}
  //pauseVideo();
	
}
function doSetLines(){
	document.getElementById("line0").style.width=((line0>0)?line0:0)+"px";
	document.getElementById("line1").style.height=((line1>0)?line1:0)+"px";
	document.getElementById("line2").style.height=((line2>0)?line2:0)+"px";
	document.getElementById("line3").style.width=((line3>0)?line3:0)+"px";
	document.getElementById("line4").style.width=((line4>0)?line4:0)+"px";
	document.getElementById("line5").style.width=((line5>0)?line5:0)+"px";
	document.getElementById("line6").style.width=((line6>0)?line6:0)+"px";
}
function resetLines(){
  line0=0;
  line1=0;
  line2=-100;
  line3=-500;
  line4=0;
  line5=-2;
  line6=0;
}


function onLink( k ){
  document.getElementById("link"+k).style.left="5px";
}

function outLink(){
  document.getElementById("link1").style.left="0px";
  document.getElementById("link2").style.left="0px";
  document.getElementById("link3").style.left="0px";
  document.getElementById("link4").style.left="0px";
}

function myMove(id,dx,dy,z){
  var e = document.getElementById(id); 
  e.style.zIndex = z;
  var st = e.style.left+"";
  e.style.left=(dx+parseInt(st) ) + "px";

  st = e.style.top+"";
  e.style.top=(dx+parseInt(st) ) + "px";
}

function polaSel(k){
  //document.getElementById("pola"+k).style.zIndex="20";
  document.getElementById("polatext"+k).style.color="#D3B";
  myMove("pola"+k , 9,1,20 );
}

function polaDesel(k){
  document.getElementById("polatext"+k).style.color="#555";
  myMove("pola"+k , -9,-1,k+10 );
}

var moveF = 0;
var rad = 0.0;
var t=0;
function doMoveF(){
  if (moveF) rad=(rad+0.07);
  rad*=0.98;
  if (rad>0.5) {
    t+=1;
    var dx = (Math.sin(t/6.0)*rad);
    var dy = (Math.cos(t/6.0)*rad*0.5);
    var f = document.getElementById("fogliettoID");
    f.style.left=(350 + dx) +"px";
    f.style.top=(138 + dy) +"px";
	if (t%20==19) moveF=0;
  }
}


function onIdle(){
  //var nowTime = new Date().getTime();
  //var d = (now - lastTime)/1000 ;

    doMoveF();
	
  //time = time + 1;
	var abs=3; // abs speed
	var rel=6; // rel speed
	
	var mustScr=0;
	if (posCurrentX<posWantedX) { 
		posCurrentX=(posCurrentX*(100-rel) + posWantedX*rel + 50)/100 + abs;
		if (posCurrentX>posWantedX) posCurrentX = posWantedX;
		mustScr=1;
		//document.getElementById("mainBox").style.left=posCurrentX+"px";
	}
	  
	if (posCurrentX>posWantedX) { 
		posCurrentX=(posCurrentX*(100-rel) + posWantedX*rel + 50)/100 - abs;
		if (posCurrentX<posWantedX) posCurrentX = posWantedX;
		mustScr=1;
		//document.getElementById("mainBox").style.left=posCurrentX+"px";
	}

	if (posCurrentY<posWantedY) { 
		posCurrentY=(posCurrentY*(100-rel) + posWantedY*rel + 50)/100 + abs;
		if (posCurrentY>posWantedY) posCurrentY = posWantedY;
		mustScr=1;
		//document.getElementById("mainBox").style.top=posCurrentY+"px";
	}
	  
	if (posCurrentY>posWantedY) { 
		posCurrentY=(posCurrentY*(100-rel) + posWantedY*rel + 50)/100 - abs;
		if (posCurrentY<posWantedY) posCurrentY = posWantedY;
		mustScr=1;
		//document.getElementById("mainBox").style.top=posCurrentY+"px";
	}
	if (mustScr) window.scrollTo(-posCurrentX,-posCurrentY); else {
	  var dx=10;
	  var update=0;
	  if (line0<line0max) {line0+=dx;update=1;}
	  if (line1<line1max) {line1+=dx;update=1;}
	  if (line2<line2max) {line2+=dx;update=1;}
	  if (line3<line3max) {line3+=dx;update=1;}
	  if (line4<line4max) {line4+=dx;update=1;}
	  if (line5<line5max) {line5+=dx;update=1;}
	  if (line6<line6max) {line6+=dx;update=1;}
	  
	  if (update)  doSetLines();
	}

	setTimeout("onIdle()",10);
}

function init() { 
  
  resetLines();
  doSetLines();
  
  setTimeout("onIdle()",10);
}

