// ****************************************
// Menu - Textes
// ****************************************

var MNb     = 7;
var MHLib   = new Array ("Home","Abstract","Main Results","Methods","Enumeration Programs","Some References","Appendixes");
var MHLien  = new Array ("0","abstract.htm","results.htm","0","enumeration.htm","references.htm","0");
var MHLarg  = new Array ("105","105","105","105","106","106","106");
var MHLibDH = new Array ("10","10","10","10","0","0","10");
var MMCoul  = new Array ("#009BDB","#A5DB21","#FF0000","#FF9900","#AF5D9C","#009BDB","#A5DB21");
var MBLien  = new Array (MNb);
MBLien[0]   = new Array ("index.htm","about.htm","new.htm");
MBLien[1]   = new Array ();
MBLien[2]   = new Array ();
MBLien[3]   = new Array ("transformation.htm","permutation.htm","intermediate.htm");
MBLien[4]   = new Array ();
MBLien[5]   = new Array ();
MBLien[6]   = new Array ("notations.htm","programs.htm","order-4.htm","order-5.htm","order-6.htm","order-7.htm");
var MBLib   = new Array (MNb);
MBLib[0]    = new Array ("Table of Contents","About the Author","What's new");
MBLib[1]    = new Array ();
MBLib[2]    = new Array ();
MBLib[3]    = new Array ("The Transformation Method","The Permutation Method","The Intermediate Square Method");
MBLib[4]    = new Array ();
MBLib[5]    = new Array ();
MBLib[6]    = new Array ("Appendix 1 - Notations, Definitions &amp; Conventions","Appendix 2 - Ex of Enumeration Program","Appendix 3 - Magic Squares of Order 4","Appendix 4 - Magic Squares of Order 5","Appendix 5 - Magic Squares of Order 6","Appendix 6 - Magic Squares of Order 7");
var MBLibT  = new Array (MNb);
MBLibT[0]   = new Array ("Table of Contents","About the Author","What's new");
MBLibT[1]   = new Array ();
MBLibT[2]   = new Array ();
MBLibT[3]   = new Array ("The Transformation Method","The Permutation Method","The Intermediate Square Method");
MBLibT[4]   = new Array ();
MBLibT[5]   = new Array ();
MBLibT[6]   = new Array ("Appendix 1 - Notations, Definitions &amp; Conventions","Appendix 2 - An Example of Enumeration Programs","Appendix 3 - Magic Squares of Order 4","Appendix 4 - Magic Squares of Order 5","Appendix 5 - Magic Squares of Order 6","Appendix 6 - Magic Squares of Order 7");
var MBRC    = new Array ("-1","-1","-1","-1","-1","-1","3");
var MBEsp   = new Array ("45","-1","-1","45","-1","-1","10");
MHTit       = new Array ("0","Abstract","Main Results","0","Enumeration Programs","Some References","0");
var MBTit   = new Array (MNb);
MBTit[0]    = new Array ("Table of Contents","About the Author","What's new");
MBTit[1]    = new Array ();
MBTit[2]    = new Array ();
MBTit[3]    = new Array ("The Transformation Method","The Permutation Method","The Intermediate Square Method");
MBTit[4]    = new Array ();
MBTit[5]    = new Array ();
MBTit[6]    = new Array ("Notations, Definitions...","Ex. of Enumeration Program","Magic Squares Order 4","Magic Squares Order 5","Magic Squares Order 6","Magic Squares Order 7");
var MSansL  = "index.htm,about.htm,new.htm";

var MHCour = null;

function IniMenus(MCou) {
	var MH = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" width=\"750\" style=\"margin-top:10px\" summary=\"\"><tr>";
	var MM = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" width=\"750\" summary=\"\"><tr>";
	var L;
	for (var i = 0; i < MNb; i++) {
		MH += "<td><table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" summary=\"\">";
		if (MHLien[i] == "0") {
			L = MBLien[i][0];
		} else {
			L = MHLien[i];
		}
		MH += "<tr><td><a href=\"" + L + "\" class=\"MChap\" style=\"width:" + MHLarg[i] + "px;margin-top:" + MHLibDH[i] + "px;\" onmouseover=\"javascript:ChgtMenu('" + i + "')\">" + MHLib[i] + "<\/a><\/td><\/tr>";
		MH += "<tr><td><a href=\"" + L + "\"><img id=\"DM" + i + "H\" class=\"DSty\" width=\"" + MHLarg[i] + "\" height=\"35\" onmouseover=\"javascript:ChgtMenu('" + i + "')\" src=\"img\/m" + i + "h.gif\" border=\"0\" alt=\"\"><\/a><\/td>";
		MM += "<td bgcolor=\"" + MMCoul[i] + "\"><a href=\"" + L + "\"><img width=\"" + MHLarg[i] + "\" height=\"5\" onmouseover=\"javascript:ChgtMenu('" + i + "')\" src=\"img\/transp.gif\" border=\"0\" alt=\"\"><\/a><\/td>";
		if (i != MNb - 1) {
			MH += "<td class=\"MSep\"><img src=\"img\/transp.gif\" width=\"2\" height=\"35\"><\/td>";
			MM += "<td class=\"MSep\"><img src=\"img\/transp.gif\" width=\"2\" height=\"5\"><\/td>";
		}
		MH += "<\/tr><\/table><\/td>";
	}
	MH += "<\/tr><\/table>";
	MM += "<\/tr><\/table>";
	document.getElementById("MH").innerHTML = MH;
	document.getElementById("MM").innerHTML = MM;
	ChgtMenu(MCou);
}

function ChgtMenu(MCou) {
	var MHCou, MBCou, Tab;
	Tab = MCou.split("_");
	MHCou = parseInt(Tab[0]);
	if (Tab.length == 1) {
		MBCou = -1;
	} else {
		MBCou = parseInt(Tab[1]);
	}
	if (MHCou == MHCour) {
		return;
	}
	var MBEH = "4", MBL = "";
	if (MBRC[MHCou] != -1) {
		MBEH = "2";
		MBL = "<td height=\"3\"><\/td><\/tr><tr>";
	}
	var MB = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" height=\"37\" style=\"position:absolute;margin-top:-" + MBEH + "px\" summary=\"\"><tr>" + MBL;
	var Dec, C, O = "";
	if (MBLib[MHCou].length == 0) {
		MB += "<td><\/td>";
	} else {
		for (var i = 0; i < MBLib[MHCou].length; i++) {
			if (i == 0 || i == MBRC[MHCou]) {
				Dec = "5";
			} else {						
				Dec = MBEsp[MHCou];
			}
			if (i == MBRC[MHCou]) {
				MB += "<\/tr><tr>";
			}
			if (i == MBCou) {
				C = "MSChapSel";
				O = " id=\"MBS\"";
			} else {
				C = "MSChap";
				if (MBCou != -1) {
					O = " onmouseover=\"document.getElementById(\'MBS\').className=\'MSChap\'\"";
				}
			}
			MB += "<td width=\"" + Dec + "\"><\/td>";
			MB += "<td><a href=\"" + MBLien[MHCou][i] + "\" class=\"" + C + "\"" + O + ">" + MBLib[MHCou][i] + "<\/a><\/td>";
		}
	}
	MB += "<\/tr><\/table>";
	document.getElementById("MB").innerHTML = MB;
	if (MHCour == null) {
		DAffichage(MHCou);
		IniNav(MHCou, MBCou);
	} else {
		DChangement(MHCou);
	}
	MHCour = MHCou;
}

function IniNav(MHCou, MBCou) {
	var MPLien = "", MPLib = "", MSLien = "", MSLib = "", Tmp;
	if (MBCou == 0 && MHLien[MHCou] != "0") {
		MPLien = MHLien[MHCou];
		MPLib  = MHTit[MHCou];
	} else {
		if (MBCou == 0 || MBCou == -1) {
			if (MHCou != 0) {
				if (MBLien[MHCou - 1].length == 0) {
					MPLien = MHLien[MHCou - 1];
					MPLib  = MHTit[MHCou - 1];
				} else {
					MPLien = MBLien[MHCou - 1][MBLien[MHCou - 1].length - 1];
					MPLib  = MBTit[MHCou - 1][MBLien[MHCou - 1].length - 1];
				}
			}
		} else {
			MPLien = MBLien[MHCou][MBCou - 1];
			MPLib  = MBTit[MHCou][MBCou - 1];
		}
	}
	if (MBCou == MBLien[MHCou].length - 1) {
		if (MHCou != MNb - 1) {
			if (MHLien[MHCou + 1] == "0") {
				MSLien = MBLien[MHCou + 1][0];
				MSLib  = MBTit[MHCou + 1][0];
			} else {
				MSLien = MHLien[MHCou + 1];
				MSLib  = MHTit[MHCou + 1];
			}
		}
	} else {
		MSLien = MBLien[MHCou][MBCou + 1];
		MSLib  = MBTit[MHCou][MBCou + 1];
	}
	var MCour;
	if (MBCou == -1) {
		MCour = MHLien[MHCou];
		Tmp = MHLib[MHCou];
	} else {
		MCour = MBLien[MHCou][MBCou];
		Tmp = MBLibT[MHCou][MBCou];
	}
	document.getElementById("MTP").innerHTML = "&nbsp;&nbsp;" + Tmp + "&nbsp;&nbsp;";
	if (("," + MSansL + ",").indexOf("," + MCour + ",") != -1) {
		return;
	}
	if (MPLien != "" && ("," + MSansL + ",").indexOf("," + MPLien + ",") == -1) {
		Tmp  = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" summary=\"\"><tr>";
		Tmp += "<td><a href=\"" + MPLien + "\" class=\"MNav\">Previous page: " + MPLib + "<\/a><\/td>";
		Tmp += "<td width=\"5\"><\/td>";
		Tmp += "<td><a href=\"" + MPLien + "\"><img src=\"img\/mfg.gif\" border=\"0\" alt=\"\"><\/a><\/td><\/tr><\/table>";
		document.getElementById("MNP").innerHTML = Tmp;
		if (document.getElementById("MNPB")) {
			document.getElementById("MNPB").innerHTML = Tmp;
		}
	}
	if (MSLien != "" && ("," + MSansL + ",").indexOf("," + MSLien + ",") == -1) {
		Tmp  = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" summary=\"\"><tr>";
		Tmp += "<td><a href=\"" + MSLien + "\"><img src=\"img\/mfd.gif\" border=\"0\" alt=\"\"><\/a><\/td>";
		Tmp += "<td width=\"5\"><\/td>";
		Tmp += "<td><a href=\"" + MSLien + "\" class=\"MNav\">Next page: " + MSLib + "<\/a><\/td><\/tr><\/table>";
		document.getElementById("MNS").innerHTML = Tmp;
		if (document.getElementById("MNSB")) {
			document.getElementById("MNSB").innerHTML = Tmp;
		}
	}
}

// ****************************************
// Menu - Degrade
// ****************************************

var DIntervalle =  40;
var DOpacity    = 0.1;

var DMH, DMB, DInter, DNav;

function DChangement(Num) {
	DMasquage();
	DAffichage(Num);
}

function DAffichage(Num) {
	DMH = document.getElementById("DM" + Num + "H");
	DMB = document.getElementById("DMB");
	DMB.src = "img/m" + Num + "b.gif";
	DNav = DMB.filters ? "ie" : typeof DMB.style.MozOpacity == "string" ? "mozilla" : "";
	if (DNav == "mozilla") {
		DMH.style.MozOpacity = 0;
		DMB.style.MozOpacity = 0;
		DInter = setInterval("DOpa()",DIntervalle);
	} else if (DNav == "ie") {
		DMH.filters.alpha.opacity = 0;
		DMB.filters.alpha.opacity = 0;
		DInter = setInterval("DOpa()",DIntervalle);
	}
}

function DMasquage() {
	if (DNav == "mozilla" || DNav == "ie") {
		clearInterval(DInter);
		if (DNav == "mozilla") {
			DMH.style.MozOpacity = 0;
			DMB.style.MozOpacity = 0;
		} else if (DNav == "ie") {
			DMH.filters.alpha.opacity = 0;
			DMB.filters.alpha.opacity = 0;
		}
	}
}

function DOpa() {
	if (DNav == "mozilla") {
		if (DMH.style.MozOpacity < 1) {
			DMH.style.MozOpacity = Math.min(parseFloat(DMH.style.MozOpacity) + DOpacity, 0.99);
			DMB.style.MozOpacity = DMH.style.MozOpacity;
		} else {
			clearInterval(DInter);
		}
	} else if (DNav == "ie") {
		if (DMH.filters.alpha.opacity < 100) {
			DMH.filters.alpha.opacity += DOpacity * 100;
			DMB.filters.alpha.opacity = DMH.filters.alpha.opacity;
		} else {
			clearInterval(DInter);
		}
	}
}

