// JavaScript file for template site

// IMPORTANT!!! 
// Functions for the nav depend highly on image naming convention:
//     images/btn_nav_<pagename>_norm.gif
//                               current.gif
//                               hover.gif
// Each page must have the current_page variable set to the page name, which is the words
// of the actual name without spaces or special characters all squeezed into one word
// Also, the image must be the child of the link which is the child of the layer (div)
// This allows for easier construction and maintenance of pages; the nav can be copied as is

var current_page = ""; // has name of page without spaces, corresponds to part of button image file name; set in pages on page load
var navcount = 6; // total number of primary nav items; note that nav ids have numbers starting at 1
var nav2count = 0; // total number of subordinate nav items

// Set up buttons
var navlabel1 = 'home';
var navurl1 = 'index.php';
var navimg1 =  "images/btn_nav_home_norm.gif";
var navlabel2 = 'mission';
var navurl2 = 'mission.htm';
var navimg2 =  "images/btn_nav_mission_norm.gif";
var navlabel3 = 'samples';
var navurl3 = 'samples.htm';
var navimg3 =  "images/btn_nav_samples_norm.gif";
var navlabel4 = 'paneljams';
var navurl4 = 'paneljams.htm';
var navimg4 =  "images/btn_nav_paneljams_norm.gif";
var navlabel5 = 'auctions2008';
var navurl5 = 'auctions2008.htm';
var navimg5 =  "images/btn_nav_auctions2008_norm.gif";
var navlabel6 = 'auctions2009';
var navurl6 = 'auctions2009.htm';
var navimg6 =  "images/btn_nav_auctions2009_norm.gif";

var nav2label1 = 'place2-1';
var nav2url1 = 'place2-1.htm';
var nav2img1 =  "images/btn_nav_place2-1_norm.gif";
var nav2label2 = 'place2-2';
var nav2url2 = 'place2-2.htm';
var nav2img2 =  "images/btn_nav_place2-2_norm.gif";
var nav2label3 = 'place2-3';
var nav2url3 = 'place2-3.htm';
var nav2img3 =  "images/btn_nav_place2-3_norm.gif";
var nav2label4 = 'place2-4';
var nav2url4 = 'place2-4.htm';
var nav2img4 =  "images/btn_nav_place2-4_norm.gif";
var nav2label5 = 'place2-5';
var nav2url5 = 'place2-5.htm';
var nav2img5 =  "images/btn_nav_place2-5_norm.gif";

var logoimg = "images/logo_main.gif";

function loadbtnimages() {
//Primary nav
for (i=1; i<=navcount; i++)
  {
  var ni = 'navimg'+i+'';
  document.getElementById('nav'+i).src = eval(ni);
  }
// Secondary nav
//for (i=1; i<=nav2count; i++)
//  {
//  var ni2 = 'nav2img'+i+'';
//  document.getElementById('nav2'+i).src = eval(ni);
//  }
}

function loadother() {
var lim = document.getElementById('logoimg');
if(lim) {lim.src = logoimg;}
}

// Function to adjust rounded corners in boxes if used
// Corners and edges are made using divs
// Edges are resized with internal background color or image is resized
// ALL CORNERS ARE 20x20!!!
var cornersize = 20;
function adjustcorners(cnt,arr) {
	for(box=1; box<=cnt; box++)
	{
	//Get box dimensions
	var cw = parseInt(document.getElementById(arr[box]).style.width);
	var ch = parseInt(document.getElementById(arr[box]).style.height);
	//alert('box:'+box+' '+arr[box]+' cw='+cw+' ch='+ch);
	document.getElementById('ur_'+arr[box]).style.left = cw-cornersize+'px';
	document.getElementById('lr_'+arr[box]).style.left = cw-cornersize+'px';
	document.getElementById('right_'+arr[box]).style.left = cw-cornersize+'px';
	document.getElementById('upper_'+arr[box]).style.width = cw-(cornersize*2)+'px';
	document.getElementById('lower_'+arr[box]).style.width = cw-(cornersize*2)+'px';
	document.getElementById('left_'+arr[box]).style.height = ch-(cornersize*2)+'px';
	document.getElementById('right_'+arr[box]).style.height = ch-(cornersize*2)+'px';
	document.getElementById('ll_'+arr[box]).style.top = ch-cornersize+'px';
	document.getElementById('lr_'+arr[box]).style.top = ch-cornersize+'px';
	document.getElementById('lower_'+arr[box]).style.top = ch-cornersize+'px';
	}
}


// Function for onmouseover and onmouseout, for nav lights
// Note that the image is within the link which is within the layer
// Used getElementsByTagName for browser compatibility
function omover(btnlayer,pagename) {
if(pagename != current_page)
{btnlayer.getElementsByTagName('a')[0].getElementsByTagName('img')[0].src = 'images/btn_nav_'+pagename+'_hover.gif';}
else
// Current page: ignore hover, kill click, force normal cursor
{btnlayer.getElementsByTagName('a')[0].onclick = null; btnlayer.getElementsByTagName('a')[0].getElementsByTagName('img')[0].style.cursor='default';}
}
function omout(btnlayer,pagename) {
if(pagename != current_page)
{btnlayer.getElementsByTagName('a')[0].getElementsByTagName('img')[0].src = 'images/btn_nav_'+pagename+'_norm.gif';}
}

// Sets nav buttons to 'norm', except for corresponding current button image
// to 'current' at page load, based on current_page var
function setnav() {
	// Loop thru nav items and set to norm unless it's the one for the current page
	for (i=1; i<=navcount; i++)
		{
		// Get page name out of image name
		var iname = document.getElementById('nav'+i).src;
		var startpos = iname.indexOf('images');
		iname = iname.substr(startpos);
		var sparr = new Array();
		sparr = iname.split('_');
		//alert('sparr:'+sparr[0]+'|'+sparr[1]+'|'+sparr[2]);
		var pagename = sparr[2];
		document.getElementById('nav'+i).src = 'images/btn_nav_'+pagename+'_norm.gif';
		if (pagename == current_page)
		{document.getElementById('nav'+i).src = 'images/btn_nav_'+pagename+'_current.gif'}
		}
}

function browser() {
  // return 1 for Internet Explorer
  if (navigator.appName == "Microsoft Internet Explorer")
    return 1;
  // return 2 for Navigator
  if (navigator.appName == "Netscape")
    return 2;
  // return 0 for other browsers
  return 0;
}

function bVer() {
  //return version number (e.g., 4.03)
  return parseFloat(navigator.appVersion)
}

//Functions to display and hide elements (cross-browser)
function ShowElement(objvar){
  if(objvar){
    objvar.style.visibility = 'visible';
    objvar.style.display = 'block';
  } 
}

function HideElement(objvar){
  if(objvar){
    objvar.style.visibility = 'hidden';
    objvar.style.display = 'none';
  } 
}

//Note to developers: these are made for info and errors to reside in new browser sessions.
//A better way is to use layers for these dialogs, to avoid popup issues.
//Function for error dialog
function makeerrwin(msg) {
  str = "width=420, height=180, scrollbars=no, resizable=yes, left=300, top=400, toolbar=no, menubar=no";
  newwin = window.open("error_template.htm", "", str);
  newwin.document.getElementById('errmsg').innerHTML = msg;
  newwin.focus();
  return newwin;
}
//Function for info dialog
function makeinfowin(msg) {
  str = "width=420, height=180, scrollbars=no, resizable=yes, left=300, top=400, toolbar=no, menubar=no";
  newwin = window.open("info_template.htm", "", str);
  newwin.document.getElementById('infomsg').innerHTML = msg;
  newwin.focus();
  return newwin;
}

//Functions for error and info boxes when used as layers in the parent page
function ShowDialog(layervar,msgid,msg) {
	ShowElement(layervar);
	document.getElementById(msgid).innerHTML = msg;
}
function HideDialog(layervar,msgid,msg) {
	HideElement(layervar);
	document.getElementById(msgid).innerHTML = "";
}

//Function for new window in general
function makenewwin(fname, x, y) {
  str = "width="+x+", height="+y+", scrollbars=no, resizable=yes, left=300, top=200, toolbar=no, menubar=no";
  newwin = window.open(fname, "", str);
  newwin.focus();
  return newwin;
}



//Some of the following are here just to keep in case something changes later
// These are functions that accommodate a nav made of text rather than images

//var qtybtns = 5;
//var qtybtns2 = 4;
//var leftmgn = 2;
//var leftmgn2 = 0;

//Place the buttons in topnav according to first one's (same as any) width
//function settopnavbtns() {
//Get width of button
//if (browser()==1) {var bwdt = document.getElementById('tnbtn1').currentStyle.width} else {var bwdt = document.getElementById('tnbtn1').style.width}
//bwdt = bwdt.replace(/px/,'') * 1;
//for (i=1; i<=qtybtns; i++)
//  {
//  var t = 'tnbtn' + i + '';
//  document.getElementById(t).style.left = leftmgn + ((i-1)*bwdt);
//  }
//}

//function setnav2btns() {
//Get width of button
//if (browser()==1) {var bwdt = document.getElementById('tn2btn1').currentStyle.width} else {var bwdt = document.getElementById('tnb2tn1').style.width}
//bwdt = bwdt.replace(/px/,'') * 1;
//for (i=1; i<=qtybtns2; i++)
//  {
//  var t = 'tn2btn' + i + '';
//  document.getElementById(t).style.left = leftmgn2 + ((i-1)*bwdt);
//  }
//}

//function setnav2btns() {
//Get width of button
//if (browser()==1) {var bwdt = document.getElementById('tn2btn1').currentStyle.width} else {var bwdt = //document.getElementById('tnb2tn1').style.width}
//bwdt = bwdt.replace(/px/,'') * 1;
//for (i=1; i<=qtybtns2; i++)
//  {
//  var t = 'tn2btn' + i + '';
//  document.getElementById(t).style.left = leftmgn2 + ((i-1)*bwdt);
//  }
//}

//function buttonon(imgid) {
//obj.className="topnavbtn topnavbtn-on";
//document.getElementById(imgid).src = "images/btn_nav_"+current_page+"_hover.gif";
//}
//function buttonoff(imgid) {
//obj.className="topnavbtn";
//document.getElementById(imgid).src = "images/btn_nav_"+current_page+"_current.gif";
//}
//function button2on(obj) {
//obj.className="nav2btn nav2btn-on";
//}
//function button2off(obj) {
//obj.className="nav2btn";
//}
