///////////////////////////////////////////////////////////////////////
// tristate.js
// tm holt 10.24.98
//
// tristate image rotator
///////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////
// get what browser we're using
ie4 = (document.all) ? true : false;
ns4 = (document.layers) ? true : false;
ff1 = (document.implementation) ? true : false;

///////////////////////////////////////////////////////////////////////
// keep track of the currently selected menu item

var GCurSelMenuItem  = null;
var GPrevSelMenuItem = null;
var GCurUnhilited    = null;
var GCurImageIndex   = 0;
var GExtraPath       = "../";

///////////////////////////////////////////////////////////////////////
// turn on highlight image
function HoverOn(imageIndex, newImageName) {
	
	GCurUnhilited = document.images[imageIndex].src;
	document.images[imageIndex].src = newImageName;
}

///////////////////////////////////////////////////////////////////////
// turn on normal image
function HoverOff(imageIndex, newImageName) {
	
	if ( GCurImageIndex == imageIndex ) {
		document.images[imageIndex].src = GCurSelMenuItem;
	}
	else {
		document.images[imageIndex].src = newImageName;
	}	
}

///////////////////////////////////////////////////////////////////////
// make a new image the active selected one
function Clicked(imageIndex, newImageName) {

	if ( GPrevSelMenuItem != null ) {
		document.images[GCurImageIndex].src = GPrevSelMenuItem;
	}

	GCurImageIndex = imageIndex;
	GPrevSelMenuItem = GCurUnhilited;
	document.images[imageIndex].src = newImageName;
	GCurSelMenuItem = document.images[imageIndex].src;
	window.focus();
}

///////////////////////////////////////////////////////////////////////
// call for selected menu item
function WriteSelected(imageName, name, iWidth) {


    var iHeight = 31;

    var imageSelName = GExtraPath + 'images/mnu-' + imageName + '-sel.gif';

    var string = '<img src="' + imageSelName + '"' +
				   ' name=' + imageName +
				   ' alt="' + name + '"' +
				   ' border=0 align="top"' +
				   ' width=' + iWidth +
				   ' height=' + iHeight + '>';

    document.write(string);

}


///////////////////////////////////////////////////////////////////////
// call to set up tristate hovering
///////////////////////////////////////////////////////////////////////
// call to set up tristate hovering
function WriteHover(imageName, hRef, name, iWidth) {
    var imageSel;
    var imageSelName;
    var imageUnsel;
    var imageUnselName;
    var imageHilite;
    var imageHiliteName;

    var string;

    var iHeight = 31;

    // selected image pre-load
    imageSelName = GExtraPath + 'images/mnu-' + imageName + '-sel.gif';
    imageSel = new Image(iWidth, iHeight);
    imageSel.src = imageSelName;

    // unselected image pre-load
    imageUnselName = GExtraPath + 'images/mnu-' + imageName + '.gif';
    imageUnsel = new Image(iWidth, iHeight);
    imageUnsel.src = imageUnselName;

    // highlighted image pre-load
    imageHiliteName = GExtraPath + 'images/mnu-' + imageName + '-hl.gif';
    imageHilite = new Image(iWidth, iHeight);
    imageHilite.src = imageHiliteName;

    var imageIndex = document.images.length;
    var targt = "";

    if (ie4 || ns4 || ff1) {
        string = '<a href="' + hRef + '"' +
				   ' onMouseOver=HoverOn(' + imageIndex + ',"' + imageHilite.src + '")' +
				   ' onMouseOut =HoverOff(' + imageIndex + ',"' + imageUnsel.src + '")' +
				   ' onClick =Clicked(' + imageIndex + ',"' + imageSel.src + '")>' +
				   '<img src="' + imageUnselName + '"' +
				   ' name=' + imageName +
				   ' alt="' + name + '"' +
				   ' border=0 align="top"' +
				   ' width=' + iWidth +
				   ' height=' + iHeight + '>' +
				   '</a>';
    }
    else {
        string = '<a href="' + hRef + '">' +
				   '<img src="' + imageUnselName + '"' +
				   ' name=' + imageName +
				   ' alt="' + name + '"' +
				   ' border=0 align="top"' +
				   ' width=' + iWidth +
				   ' height=' + iHeight + '>' +
				   '</a>';
    }
    document.write(string);
}

///////////////////////////////////////////////////////////////////////
//
// Write menubar functions
//
///////////////////////////////////////////////////////////////////////


///////////////////////////////////////////////////////////////////////
// About menubar
function WriteMenubar(sSelected) {

    if (sSelected == "reviews") {
        WriteSelected('reviews', 'Reviews', 132);
    }
    else {
        WriteHover('reviews', 'Articles.aspx?REFTYPE=5', 'Reviews', 132);
    }


    if (sSelected == "search") {
        WriteSelected('search', 'Search Reviews and Columns', 186);
    }
    else {
        WriteHover('search', 'Products.aspx', 'Search Reviews and Columns', 186);
    }


    if (sSelected == "about") {
        WriteSelected('about', 'About Tri-Gear Review', 148);
    }
    else {
        WriteHover('about', 'About.aspx', 'About Tri-Gear Review', 148);
    }

}


///
/// Change the top banner image
///
function ChangeBannerPic() {
    var MAXCOUNT = 17;
    var n = parseInt(Math.random() * MAXCOUNT) + 1;

    var img = document.getElementById('TOPPIC');
    if (img != null) {
        img.src = GExtraPath + 'images/center' + n + '.jpg';
    }
}


