// Syntaxes: *** START EDITING HERE, READ THIS SECTION CAREFULLY! ***
//
// menu[menuNumber][0] = new Menu(Vertical menu? (true/false), 'popout indicator', left, top,
// width, 'mouseover colour', 'background colour', 'border stylesheet', 'text stylesheet');
//
// Left and Top are measured on-the-fly relative to the top-left corner of its trigger, or
// for the root menu, the top-left corner of the page.
//
// menu[menuNumber][itemNumber] = new Item('Text', 'URL', 'target frame', length of menu item,
//  additional spacing to next menu item, number of target menu to popout);
//
// If no target menu (popout) is desired, set it to 0. Likewise, if your site does not use
// frames, pass an empty string as a frame target.
//
// Something that needs explaining - the Vertical Menu setup. You can see most menus below
// are 'true', that is they are vertical, except for the first root menu. The 'length' and
// 'width' of an item depends on its orientation -- length is how long the item runs for in
// the direction of the menu, and width is the lateral dimension of the menu. Just look at
// the examples and tweak the numbers, they'll make sense eventually :).

var menu = new Array();

// Default colours passed to most menu constructors (just passed to functions, not
// a global variable - makes things easier to change later in bulk).
var defOver = 'gray', defBack = 'black';

// Default 'length' of menu items - item height if menu is vertical, width if horizontal.
var defLength = 22;

// Menu 0 is the special, 'root' menu from which everything else arises.
menu[0] = new Array();
// A non-vertical menu with a few different colours and no popout indicator, as an example.
// *** MOVE ROOT MENU AROUND HERE ***  it's positioned at (5, 0) and is 17px high now.
menu[0][0] = new Menu(true, '', 5, 100, 60, defOver, defBack, '', 'itemText');
// Notice how the targets are all set to nonzero values...
// The 'length' of each of these items is 40, and there is spacing of 10 to the next item.
// Most of the links are set to '#' hashes, make sure you change them to actual files.
menu[0][1] = new Item('  SkyBadger',    'http://www.skybadger.net/index.shtml',              '',  10, 22, 0);
menu[0][2] = new Item('  Equipment',    'http://www.skybadger.net/equipment/telescopes.shtml',    '>', 10, 22, 1);
menu[0][3] = new Item('  Spectrography','http://www.skybadger.net/spectra/index.shtml',      											 '>', 10, 22, 2);
menu[0][4] = new Item('  Imaging',      'http://www.skybadger.net/imaging/index.shtml',      '', 10, 22,  3);
menu[0][5] = new Item('  Links',        'http://www.skybadger.net/reference/resources.shtml','',  10, 22, 4);
menu[0][6] = new Item('  For Sale',     'http://www.skybadger.net/astromart.shtml','',  10, 22, 0);

// Equipment menu.
menu[1] = new Array();
menu[1][0] = new Menu(true, '>', 60, 22, 120, defOver, defBack, 'itemBorder', 'itemText');
menu[1][1] = new Item('   Telescopes',             '/equipment/telescopes/telescopes.shtml', '', defLength, 0, 5);
menu[1][2] = new Item('   Observatory',            '/equipment/observatory.shtml', '', defLength, 0, 6);
menu[1][3] = new Item('   Mechanicals',            '/equipment/design.shtml', '', defLength, 0, 0);
menu[1][4] = new Item('   Projects',               '/equipment/projects.shtml', '', defLength, 0, 7);

// Spectrography menu
menu[2] = new Array();
menu[2][0] = new Menu(true, '>', 60, 22, 80, defOver, defBack, 'itemBorder', 'itemText');
menu[2][1] = new Item('   Stellar',        'http://www.skybadger.net/spectra/index.shtml', '', defLength, 0, 0);
menu[2][2] = new Item('   NGC',            '', '#', defLength, 0, 0);
menu[2][3] = new Item('   Methods',        'http://www.skybadger.net/spectra/pfgrating.shtml', '', defLength, 0, 0);

// Imaging menu
menu[3] = new Array();
menu[3][0] = new Menu(true, '>', 60, 22, 120, defOver, defBack, 'itemBorder', 'itemText');
menu[3][1] = new Item('  Solar   ',   '/imaging/solar.shtml', '', defLength, 0, 0);
menu[3][2] = new Item('  Planetary',  '/imaging/planetary.shtml', '', defLength, 0, 0);
menu[3][3] = new Item('  Wide Field',   '/imaging/widefield.shtml', '', defLength, 0, 0);
menu[3][4] = new Item('  DeepSky',   '/imaging/deepsky.shtml', '', defLength, 0, 0);
menu[3][5] = new Item('  Lunar ', '/imaging/lunar.shtml', '', defLength, 0, 0);
menu[3][6] = new Item('  Techniques', '', '', defLength, 0, 0);
menu[3][7] = new Item('  SkyCam',    '/skycam/webcamnav.jsp', '', defLength, 0, 0);
//menu[3][8] = new Item('  Photo Database',    '/photos/index.php', '', defLength, 0, 0);

// Resources menu
menu[4] = new Array();
menu[4][0] = new Menu(true, '>', 30, 22, 120, defOver, defBack, 'itemBorder', 'itemText');
menu[4][1] = new Item(' Home               ', '/reference/resources.shtml#whatsup',           '', defLength, 0, 0);
menu[4][2] = new Item(' Retail             ', '/reference/resources.shtml#astro_retail',      '', defLength, 0, 0);
menu[4][3] = new Item(' Hardware           ', '/reference/resources.shtml#astro_hardware',    '', defLength, 0, 0);
menu[4][4] = new Item(' Software           ', '/reference/resources.shtml#astro_software',    '', defLength, 0, 0);
menu[4][5] = new Item(' Publications       ', '/reference/resources.shtml#astro_pubs',        '', defLength, 0, 0);
menu[4][6] = new Item(' Groups and Clubs   ', '/reference/resources.shtml#groups',            '', defLength, 0, 0);
menu[4][7] = new Item(' Whats Up           ', '/reference/resources.shtml#astro_whatsup',     '', defLength, 0, 0);

//Telescopes menu 
menu[5] = new Array();
menu[5][0] = new Menu(true, '>', 120, 22, 120, defOver, defBack, 'itemBorder', 'itemText');
menu[5][1] = new Item(' VC200L               ', '/equipment/telescopes/vc200l/index.shtml',           '', defLength, 0, 0);
menu[5][2] = new Item(' Vixen ST80           ', '/equipment/telescopes/vixenst80/index.shtml',      			  '', defLength, 0, 0);
menu[5][3] = new Item(' Vixen SP102          ', '/equipment/telescopes/vixensp102/index.shtml',      			  '', defLength, 0, 0);
menu[5][4] = new Item(' SkyWatcher 80ED      ', '/equipment/telescopes/skywatcher80ed/80ed.shtml',    '', defLength, 0, 0);
menu[5][5] = new Item(' SkyWatcher 150/f5    ', '/equipment/telescopes/skywatcher150og/index.shtml',      	  '', defLength, 0, 0);

menu[6] = new Array();
menu[6][0] = new Menu(true, '>', 120, 22, 120, defOver, defBack, 'itemBorder', 'itemText');
menu[6][1] = new Item('   GRP Shutter Manufacture',            '/equipment/grp_shutter.shtml', 		  '', defLength, 0, 0);
menu[6][2] = new Item('   Wireless Control',            	   '/equipment/wireless.shtml', 	  '', defLength, 0, 0);
menu[6][3] = new Item('   ASCOM Dome control',                 '/techniques/ascomdome.shtml', 		  '', defLength, 0, 0);

menu[7] = new Array();
menu[7][0] = new Menu(true, '>', 120, 22, 120, defOver, defBack, 'itemBorder', 'itemText');
menu[7][1] = new Item('   Pan &amp; Tilt webcam ',            '/skycam/webcamnav.jsp', 			  '', defLength, 0, 0);
menu[7][2] = new Item('   Scripts & scripting',               '/scripting/index.shtml',    		  '', defLength, 0, 0);
menu[7][3] = new Item('   Magnetometry',               	      '/techniques/magnetometer.shtml', 	  '', defLength, 0, 0);
menu[7][4] = new Item('   Flatfield lightbox',                '/techniques/flatfield_lightbox.shtml',	  '', defLength, 0, 0);
menu[7][5] = new Item('   Mirror Making Machine',               '/techniques/mirrormakingmachine.shtml',	  '', defLength, 0, 0);
menu[7][6] = new Item('   AE Systems Mount renovation',         '/equipment/astrosystems_mount.shtml',	  '', defLength, 0, 0);
menu[7][7] = new Item('   GoTo Controller System Design',         '/equipment/GoToDesign/GoToSystemDesign.shtml',	  '', defLength, 0, 0);

//menu[7][5] = new Item('   Clear Sky Sensor ',                 '/techniques/clearsky.shtml#',  	  '', defLength, 0, 0);
//menu[7][5] = new Item('   Clear Sky Sensor ',                 '/techniques/clearsky.shtml#',  	  '', defLength, 0, 0);
//menu[7][6] = new Item('   Collimation tools',                 '/techniques/artificialstars.shtml',      '', defLength, 0, 0);
//menu[7][7] = new Item('   Guide Dog Settings',                '/equipment/autoguiding/',                  '', defLength, 0, 0);
//menu[7][8] = new Item('   Maxim autoguiding',		       '/techniques/maximautoguiding.shtml#', 	  '', defLength, 0, 0);

var popOldWidth = window.innerWidth;
nsResizeHandler = new Function('if (popOldWidth != window.innerWidth) location.reload()');

// This is a quick snippet that captures all clicks on the document and hides the menus
// every time you click. Use if you want.
if (isNS4) document.captureEvents(Event.CLICK);
document.onclick = clickHandle;
