function largeur_fenetre() {
 if (window.innerWidth) return window.innerWidth;
 else if (document.body && document.body.offsetWidth) return document.body.offsetWidth;
 else return 0;
}

function hauteur_fenetre() {
 if (window.innerHeight) return window.innerHeight  ;
 else if (document.body && document.body.offsetHeight) return document.body.offsetHeight;
 else return 0;
}

function top_fenetre() {
 if(DOM) {
   if(MS) return document.body.scrollTop;
   else return window.pageYOffset;
 }
 else {
 	if (NS) return window.pageYOffset;
	else if (MS) return document.body.scrollTop;
	else return void(0);
 }
}

function left_fenetre() {
 if(DOM) {
   if (MS) return document.body.scrollLeft;
   else return window.pageXOffset;
 }
 else {
 	if (NS) return window.pageXOffset;
	else if (MS) return document.body.scrollLeft;
	else return void(0);
 }
}

function reconstruction() {if (largeur != largeur_fenetre() || hauteur != hauteur_fenetre()) window.history.go(0);}

function write_status(texte) {window.defaultStatus = texte;}

function loop_win_div(p1,p2,p3,sens,marge_deb,marge_fin,pas,speed,init) {
	var epaisscroll = 20;
	var x1 = left_fenetre()+marge_deb;
	var x2 = left_fenetre()+largeur_fenetre()-marge_fin-get_l_div(p1,p2,p3)-epaisscroll;
	var y1 = top_fenetre()+marge_deb;
	var y2 = top_fenetre()+hauteur_fenetre()-marge_fin-get_h_div(p1,p2,p3)-epaisscroll;
	if (init != undefined) {
		if (sens.search("horizontal") > -1) traque_goto2_y_div(p1,p2,p3,speed,pas);
		else traque_goto2_x_div(p1,p2,p3,speed,pas);
	}	
	switch (sens) {
		case "horizontal>":
			set_x_div(p1,p2,p3,x1);
			goto_x_div(p1,p2,p3,x2,pas,speed,"loop_win_div(\""+p1+"\",\""+p2+"\","+p3+",\"horizontal<\","+marge_deb+","+marge_fin+","+pas+","+speed+");");
			break;
		case "vertical>":
			set_y_div(p1,p2,p3,y1);
			goto_y_div(p1,p2,p3,y2,pas,speed,"loop_win_div(\""+p1+"\",\""+p2+"\","+p3+",\"vertical<\","+marge_deb+","+marge_fin+","+pas+","+speed+");");
			break;
		case "horizontal<":
			set_x_div(p1,p2,p3,x2);
			goto_x_div(p1,p2,p3,x1,pas,speed,"loop_win_div(\""+p1+"\",\""+p2+"\","+p3+",\"horizontal>\","+marge_deb+","+marge_fin+","+pas+","+speed+");");
			break;
		case "vertical<":
			set_y_div(p1,p2,p3,y2);
			goto_y_div(p1,p2,p3,y1,pas,speed,"loop_win_div(\""+p1+"\",\""+p2+"\","+p3+",\"vertical>\","+marge_deb+","+marge_fin+","+pas+","+speed+");");
			break;
		default:break;
	}
}

function loop_win1_div(p1,p2,p3,sens,marge_deb,marge_fin,pas,speed,init) {
	var epaisscroll = 20;
	var x1 = left_fenetre()+marge_deb;
	var x2 = left_fenetre()+largeur_fenetre()-marge_fin-get_l_div(p1,p2,p3)-epaisscroll;
	var y1 = top_fenetre()+marge_deb;
	var y2 = top_fenetre()+hauteur_fenetre()-marge_fin-get_h_div(p1,p2,p3)-epaisscroll;
	if (init != undefined) {
		if (sens.search("horizontal") > -1) traque_goto2_y_div(p1,p2,p3,speed,pas);
		else traque_goto2_x_div(p1,p2,p3,speed,pas);
	}	
	switch (sens) {
		case "horizontal>":
			set_x_div(p1,p2,p3,x1);
			goto1_x_div(p1,p2,p3,x2,pas,speed,"loop_win1_div(\""+p1+"\",\""+p2+"\","+p3+",\"horizontal<\","+marge_deb+","+marge_fin+","+pas+","+speed+");");
			break;
		case "vertical>":
			set_y_div(p1,p2,p3,y1);
			goto1_y_div(p1,p2,p3,y2,pas,speed,"loop_win1_div(\""+p1+"\",\""+p2+"\","+p3+",\"vertical<\","+marge_deb+","+marge_fin+","+pas+","+speed+");");
			break;
		case "horizontal<":
			set_x_div(p1,p2,p3,x2);
			goto1_x_div(p1,p2,p3,x1,pas,speed,"loop_win1_div(\""+p1+"\",\""+p2+"\","+p3+",\"horizontal>\","+marge_deb+","+marge_fin+","+pas+","+speed+");");
			break;
		case "vertical<":
			set_y_div(p1,p2,p3,y2);
			goto1_y_div(p1,p2,p3,y1,pas,speed,"loop_win1_div(\""+p1+"\",\""+p2+"\","+p3+",\"vertical>\","+marge_deb+","+marge_fin+","+pas+","+speed+");");
			break;
		default:break;
	}
}

function loop_win2_div(p1,p2,p3,direction,sens,marge,pas,speed,init) {
	var epaisscroll = 20;
	var x1 = left_fenetre()+marge;
	var x2 = left_fenetre()+largeur_fenetre()-marge-get_l_div(p1,p2,p3)-epaisscroll;
	var y1 = top_fenetre()+marge;
	var y2 = top_fenetre()+hauteur_fenetre()-marge-get_h_div(p1,p2,p3)-epaisscroll;
	if (direction == "droite") {
			switch (sens) {
				case "horizontal>":
					set_xy_div(p1,p2,p3,x1,y1);
					goto_x_div(p1,p2,p3,x2,pas,speed,
						"loop_win2_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"vertical>\","+marge+","+pas+","+speed+");");
					break;
				case "vertical>":
					set_xy_div(p1,p2,p3,x2,y1);
					goto_y_div(p1,p2,p3,y2,pas,speed,
						"loop_win2_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"horizontal<\","+marge+","+pas+","+speed+");");
					break;
				case "horizontal<":
					set_xy_div(p1,p2,p3,x2,y2);
					goto_x_div(p1,p2,p3,x1,pas,speed,
						"loop_win2_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"vertical<\","+marge+","+pas+","+speed+");");
					break;
				case "vertical<":
					set_xy_div(p1,p2,p3,x1,y2);
					goto_y_div(p1,p2,p3,y1,pas,speed,
						"loop_win2_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"horizontal>\","+marge+","+pas+","+speed+");");
					break;
				default:break;
			}
	}
	if (direction == "gauche") {
			switch (sens) {
				case "horizontal>":
					set_xy_div(p1,p2,p3,x1,y2);
					goto_x_div(p1,p2,p3,x2,pas,speed,
						"loop_win2_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"vertical<\","+marge+","+pas+","+speed+");");
					break;
				case "vertical>":
					set_xy_div(p1,p2,p3,x1,y1);
					goto_y_div(p1,p2,p3,y2,pas,speed,
						"loop_win2_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"horizontal>\","+marge+","+pas+","+speed+");");
					break;
				case "horizontal<":
					set_xy_div(p1,p2,p3,x2,y1);
					goto_x_div(p1,p2,p3,x1,pas,speed,
						"loop_win2_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"vertical>\","+marge+","+pas+","+speed+");");
					break;
				case "vertical<":
					set_xy_div(p1,p2,p3,x2,y2);
					goto_y_div(p1,p2,p3,y1,pas,speed,
						"loop_win2_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"horizontal<\","+marge+","+pas+","+speed+");");
					break;
				default:break;
			}
	}
}

function loop_win3_div(p1,p2,p3,direction,sens,marge,pas,speed,init) {
	var epaisscroll = 20;
	var x1 = left_fenetre()+marge;
	var x2 = left_fenetre()+largeur_fenetre()-marge-get_l_div(p1,p2,p3)-epaisscroll;
	var y1 = top_fenetre()+marge;
	var y2 = top_fenetre()+hauteur_fenetre()-marge-get_h_div(p1,p2,p3)-epaisscroll;
	if (direction == "droite") {
			switch (sens) {
				case "horizontal>":
					set_xy_div(p1,p2,p3,x1,y1);
					goto1_x_div(p1,p2,p3,x2,pas,speed,
						"loop_win3_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"vertical>\","+marge+","+pas+","+speed+");");
					break;
				case "vertical>":
					set_xy_div(p1,p2,p3,x2,y1);
					goto1_y_div(p1,p2,p3,y2,pas,speed,
						"loop_win3_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"horizontal<\","+marge+","+pas+","+speed+");");
					break;
				case "horizontal<":
					set_xy_div(p1,p2,p3,x2,y2);
					goto1_x_div(p1,p2,p3,x1,pas,speed,
						"loop_win3_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"vertical<\","+marge+","+pas+","+speed+");");
					break;
				case "vertical<":
					set_xy_div(p1,p2,p3,x1,y2);
					goto1_y_div(p1,p2,p3,y1,pas,speed,
						"loop_win3_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"horizontal>\","+marge+","+pas+","+speed+");");
					break;
				default:break;
			}
	}
	if (direction == "gauche") {
			switch (sens) {
				case "horizontal>":
					set_xy_div(p1,p2,p3,x1,y2);
					goto1_x_div(p1,p2,p3,x2,pas,speed,
						"loop_win3_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"vertical<\","+marge+","+pas+","+speed+");");
					break;
				case "vertical>":
					set_xy_div(p1,p2,p3,x1,y1);
					goto1_y_div(p1,p2,p3,y2,pas,speed,
						"loop_win3_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"horizontal>\","+marge+","+pas+","+speed+");");
					break;
				case "horizontal<":
					set_xy_div(p1,p2,p3,x2,y1);
					goto1_x_div(p1,p2,p3,x1,pas,speed,
						"loop_win3_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"vertical>\","+marge+","+pas+","+speed+");");
					break;
				case "vertical<":
					set_xy_div(p1,p2,p3,x2,y2);
					goto1_y_div(p1,p2,p3,y1,pas,speed,
						"loop_win3_div(\""+p1+"\",\""+p2+"\","+p3+",\""+direction+"\",\"horizontal<\","+marge+","+pas+","+speed+");");
					break;
				default:break;
			}
	}
}

function traque_div(p1,p2,p3,x,y,speed) {
	set_xy_div(p1,p2,p3,left_fenetre() + x,top_fenetre() + y);
	setTimeout("traque_div('" + p1 + "','" + p2 + "','" + p3 + "'," + x + "," + y + "," + speed + ");",speed);
}

function traque_x_div(p1,p2,p3,x,speed) {
	set_x_div(p1,p2,p3,left_fenetre() + x);
	setTimeout("traque_x_div('" + p1 + "','" + p2 + "','" + p3 + "'," + x + "," + speed + ");",speed);
}

function traque_y_div(p1,p2,p3,y,speed) {
	set_y_div(p1,p2,p3,top_fenetre() + y);
	setTimeout("traque_y_div('" + p1 + "','" + p2 + "','" + p3 + "'," + y + "," + speed + ");",speed);
}

function traque_move1_x_div(p1,p2,p3,x,dx,speed,div) {
	var ddx = left_fenetre() + dx - x;
	if (ddx != 0) {
		if (Math.abs(ddx) <= 0.5) {
			x = left_fenetre() + dx;
		} 
		else {
			if (ddx > 0) {
				x += Math.abs(ddx)/div;
			}
			else {
				x -= Math.abs(ddx)/div;
			}
		}
		set_x_div(p1,p2,p3,x);
	}	
	setTimeout("traque_move1_x_div('" + p1 + "','" + p2 + "','" + p3 + "'," + x + "," + dx + "," + speed + "," + div + ");",speed);
}

function traque_move1_y_div(p1,p2,p3,y,dy,speed,div) {
	var ddy = top_fenetre() + dy - y;
	if (ddy != 0) {
		if (Math.abs(ddy) <= 0.5) {
			y = top_fenetre() + dy;
		} 
		else {
			if (ddy > 0) {
				y += Math.abs(ddy)/div;
			}
			else {
				y -= Math.abs(ddy)/div;
			}
		}
		set_y_div(p1,p2,p3,y);
	}
	setTimeout("traque_move1_y_div('" + p1 + "','" + p2 + "','" + p3 + "'," + y + "," + dy + "," + speed + "," + div + ");",speed);
}

function traque_move1_div(p1,p2,p3,x,y,dx,dy,speed,div) {
	var ddx = left_fenetre() + dx - x;
	var ddy = top_fenetre() + dy - y;
	if (ddx != 0) {
		if (Math.abs(ddx) <= 0.5) {
			x = left_fenetre() + dx;
		} 
		else {
			if (ddx > 0) {
				x += Math.abs(ddx)/div;
			}
			else {
				x -= Math.abs(ddx)/div;
			}
		}
	}	
	if (ddy != 0) {
		if (Math.abs(ddy) <= 0.5) {
			y = top_fenetre() + dy;
		} 
		else {
			if (ddy > 0) {
				y += Math.abs(ddy)/div;
			}
			else {
				y -= Math.abs(ddy)/div;
			}
		}
	}
	if (ddx != 0 || ddy != 0)	set_xy_div(p1,p2,p3,x,y);
	setTimeout("traque_move1_div('" + p1 + "','" + p2 + "','" + p3 + "'," + x + "," + y + "," + dx + "," + dy + "," + speed + "," + div + ");",speed);
}

function traque_goto1_x_div(p1,p2,p3,dx,speed,div) {
	traque_move1_x_div(p1,p2,p3,get_x_div(p1,p2,p3),dx,speed,div); 
}

function traque_goto2_x_div(p1,p2,p3,speed,div) {
	traque_move1_x_div(p1,p2,p3,get_x_div(p1,p2,p3),get_x_div(p1,p2,p3),speed,div); 
}

function traque_goto1_y_div(p1,p2,p3,dy,speed,div) {
	traque_move1_y_div(p1,p2,p3,get_y_div(p1,p2,p3),dy,speed,div); 
}

function traque_goto2_y_div(p1,p2,p3,speed,div) {
	traque_move1_y_div(p1,p2,p3,get_y_div(p1,p2,p3),get_y_div(p1,p2,p3),speed,div); 
}

function traque_goto1_div(p1,p2,p3,dx,dy,speed,div) {
	traque_move1_div(p1,p2,p3,get_x_div(p1,p2,p3),get_y_div(p1,p2,p3),dx,dy,speed,div);
}

function traque_goto2_div(p1,p2,p3,speed,div) {
	traque_move1_div(p1,p2,p3,get_x_div(p1,p2,p3),get_y_div(p1,p2,p3),get_x_div(p1,p2,p3),get_y_div(p1,p2,p3),speed,div);
}

