/*** SET BUTTON'S FOLDER HERE ***/
var buttonFolder = "buttons/";

/*** SET BUTTONS' FILENAMES HERE ***/
upSources = new Array("button1up.png","button2up.png","button3up.png","button4up.png","button5up.png","button6up.png","button7up.png");

overSources = new Array("button1over.png","button2over.png","button3over.png","button4over.png","button5over.png","button6over.png","button7over.png");

// SUB MENUS DECLARATION, YOU DONT NEED TO EDIT THIS
subInfo = new Array();
subInfo[1] = new Array();
subInfo[2] = new Array();
subInfo[3] = new Array();
subInfo[4] = new Array();
subInfo[5] = new Array();
subInfo[6] = new Array();
subInfo[7] = new Array();

//*** SET SUB MENUS TEXT LINKS AND TARGETS HERE ***//
subInfo[1][1] = new Array("About DD","aboutdd.html","");
subInfo[1][2] = new Array("What's new","aboutdd.html#whatsnew","");
subInfo[1][3] = new Array("For sale","aboutdd.html#forsale","");
subInfo[1][4] = new Array("Site search","searchdd.html","");
subInfo[1][5] = new Array("Contact page","contact.html","");


subInfo[2][1] = new Array("Getting started","gettingstarted.html","");
subInfo[2][2] = new Array("Is it Safe?","gettingstarted.html#safety","");
subInfo[2][3] = new Array("What's involved?","gettingstarted.html#involve","");
subInfo[2][4] = new Array("Getting info.","gettingstarted.html#knowhow","");
subInfo[2][5] = new Array("Modifiying hi-fi","modstoelectronics.html","");
subInfo[2][6] = new Array("Building hi-fi","buildingyourown.html","");
subInfo[2][7] = new Array("Making a PCB","buildingyourown.html#makingapcb","");
subInfo[2][8] = new Array("Casework","buildingyourown.html#casework","");
subInfo[2][9] = new Array("Upgrades","upgradinghifi.html","");
subInfo[2][10] = new Array("Buying bits","gettingstarted.html#buyingcomponents","");
subInfo[2][11] = new Array("Tools","gettingstarted.html#tools","");
subInfo[2][12] = new Array("Solder station","solderstation.html","");
subInfo[2][13] = new Array("Building 'pods'","ddpods.html","");
subInfo[2][14] = new Array("Propods'","propods.html","");

subInfo[3][1] = new Array("My DIY TT","turntables.html#myturntable","");
subInfo[3][2] = new Array("Phono stage","turntables.html#ttphonostage","");
subInfo[3][3] = new Array("Jfet phono pre","duplex_phono_pre.html#duplexdesign","");

subInfo[4][1] = new Array("Philips CD723 elec","digital.html#project.cd2.html","");
subInfo[4][2] = new Array("Philips CD723 case","digital.html#project.cd.html","");
subInfo[4][3] = new Array("DacKit","dackit.html","");
subInfo[4][4] = new Array("CD723 circuits","cd723circuits.html","");
subInfo[4][5] = new Array("SB3 modifications.","sb3.html","");


subInfo[5][1] = new Array("Arcam A60 mods","a60mods.html","");
subInfo[5][2] = new Array("Gainclones","gaincloneindex.html","");
subInfo[5][3] = new Array("GC FAQ","gaincloneFAQ.html","");
subInfo[5][4] = new Array("Basic GC","gainclone.html","");
subInfo[5][5] = new Array("Buffered GC","gainclone2.html","");
subInfo[5][6] = new Array("VBIGC","gainclone3.html","");
subInfo[5][7] = new Array("A60 GC","gainclone4.html","");
subInfo[5][8] = new Array("Regulated GC","gainclone6.html","");
subInfo[5][9] = new Array("T-network GC","gainclone7.html","");
subInfo[5][10] = new Array("3886 GC","gainclone_3886.html","");
subInfo[5][11] = new Array("GC pre-amp","gainclonepre.html","");
subInfo[5][12] = new Array("GC SMPS","gainclonesmps.html","");
subInfo[5][13] = new Array("GC snub PSU","gainclonesnub.html","");
subInfo[5][14] = new Array("DD preamp","project.preamp.html","");
subInfo[5][15] = new Array("Attenuator","project.preamp.html#attenuator","");
subInfo[5][16] = new Array("Class-T amps","t_amps.html","");
subInfo[5][17] = new Array("Resurrector","gainclone_resurrector.html","");
subInfo[5][18] = new Array("Pedja Rogic GC's","prp/prindex.htm","");

subInfo[6][1] = new Array("Repairing","loudspeakers.html#repairs","");
subInfo[6][2] = new Array("Modifying","loudspeakers.html#spkrmods","");
subInfo[6][3] = new Array("Building","loudspeakers.html#lsbuilding","");
subInfo[6][4] = new Array("3Way active","loudspeakers4.html","");
subInfo[6][5] = new Array("IPL A2","loudspeakers2.html#myspeakers","");
subInfo[6][6] = new Array("Active Xovers","project.preamp.html#xovers","");
subInfo[6][7] = new Array("Goodmans 201","loudspeakers2.html#myfr","");
subInfo[6][8] = new Array("Open baffles 1","loudspeakers2.html#up1","");
subInfo[6][9] = new Array("Open baffles 2","loudspeakers2.html#baf2","");
subInfo[6][10] = new Array("Open baffles 3","project.speakers2.html","");
subInfo[6][11] = new Array("TL subwoofers","loudspeakers5.html","");


subInfo[7][1] = new Array("Hi-fi media","hifimedia.html","");
subInfo[7][2] = new Array("Power supply","powersupplies.html","");
subInfo[7][3] = new Array("Mains Conditioner","mainsconditioner.html","");
subInfo[7][4] = new Array("DD Project","project.html","");
subInfo[7][5] = new Array("Cabling","cabling.html","");
subInfo[7][6] = new Array("Setting up","listeningroometc.html","");
subInfo[7][7] = new Array("Propods","propods.html","");
subInfo[7][8] = new Array("Quiet PC","quieter_pc.html","");

//*** SET SUB MENU POSITION ( RELATIVE TO BUTTON ) ***//
var xSubOffset = 0;
var ySubOffset = 25;



//*** NO MORE SETTINGS BEYOND THIS POINT ***//
var overSub = false;
var delay = 500;
totalButtons = upSources.length;

// GENERATE SUB MENUS
for ( x=0; x<totalButtons; x++) {
	// SET EMPTY DIV FOR BUTTONS WITHOUT SUBMENU
	if ( subInfo[x+1].length < 1 ) { 
		document.write('<div id="submenu' + (x+1) + '">');
	// SET DIV FOR BUTTONS WITH SUBMENU
	} else {
		document.write('<div id="submenu' + (x+1) + '" class="dropmenu" ');
		document.write('onMouseOver="overSub=true;');
		document.write('setOverImg(\'' + (x+1) + '\',\'\');"');
		document.write('onMouseOut="overSub=false;');
		document.write('setTimeout(\'hideSubMenu(\\\'submenu' + (x+1) + '\\\')\',delay);');
		document.write('setOutImg(\'' + (x+1) + '\',\'\');">');


		document.write('<ul>');
		for ( k=0; k<subInfo[x+1].length-1; k++ ) {
			document.write('<li>');
			document.write('<a href="' + subInfo[x+1][k+1][1] + '" ');
			document.write('target="' + subInfo[x+1][k+1][2] + '">');
			document.write( subInfo[x+1][k+1][0] + '</a>');
			document.write('</li>');
		}
		document.write('</ul>');
	}
	document.write('</div>');
}





//*** MAIN BUTTONS FUNCTIONS ***//
// PRELOAD MAIN MENU BUTTON IMAGES
function preload() {
	for ( x=0; x<totalButtons; x++ ) {
		buttonUp = new Image();
		buttonUp.src = buttonFolder + upSources[x];
		buttonOver = new Image();
		buttonOver.src = buttonFolder + overSources[x];
	}
}

// SET MOUSEOVER BUTTON
function setOverImg(But, ID) {
	document.getElementById('button' + But + ID).src = buttonFolder + overSources[But-1];
}

// SET MOUSEOUT BUTTON
function setOutImg(But, ID) {
	document.getElementById('button' + But + ID).src = buttonFolder + upSources[But-1];
}



//*** SUB MENU FUNCTIONS ***//
// GET ELEMENT ID MULTI BROWSER
function getElement(id) {
	return document.getElementById ? document.getElementById(id) : document.all ? document.all(id) : null; 
}

// GET X COORDINATE
function getRealLeft(id) { 
	var el = getElement(id);
	if (el) { 
		xPos = el.offsetLeft;
		tempEl = el.offsetParent;
		while (tempEl != null) {
			xPos += tempEl.offsetLeft;
			tempEl = tempEl.offsetParent;
		} 
		return xPos;
	} 
} 

// GET Y COORDINATE
function getRealTop(id) {
	var el = getElement(id);
	if (el) { 
		yPos = el.offsetTop;
		tempEl = el.offsetParent;
		while (tempEl != null) {
			yPos += tempEl.offsetTop;
			tempEl = tempEl.offsetParent;
		}
		return yPos;
	}
}

// MOVE OBJECT TO COORDINATE
function moveObjectTo(objectID,x,y) {
	var el = getElement(objectID);
	el.style.left = x;
	el.style.top = y;
}

// MOVE SUBMENU TO CORRESPONDING BUTTON
function showSubMenu(subID, buttonID) {
	hideAllSubMenus();
	butX = getRealLeft(buttonID);
	butY = getRealTop(buttonID);
	moveObjectTo(subID,butX+xSubOffset, butY+ySubOffset);
}

// HIDE ALL SUB MENUS
function hideAllSubMenus() {
	for ( x=0; x<totalButtons; x++) {
		moveObjectTo("submenu" + (x+1) + "",-500, -500 );
	}
}

// HIDE ONE SUB MENU
function hideSubMenu(subID) {
	if ( overSub == false ) {
		moveObjectTo(subID,-500, -500);
	}
}



//preload();

