/*
**********************************************************************************************************************

Script:     default.js
Created:    David Hood, 2008.03.27
Function:   Main script library for westwindmarine.com
Changes:    <YYYY.MM.DD>    <Author ID>     <Change>

=======================================================================================================================

Copyright (C) 2008 by David Hood, Pitt Meadows, BC
This work is a private literary publication and is protected under Canadian copyright laws.

**********************************************************************************************************************
*/

var sMenuPrev="";
var oTimeOut=null;
var bCombo=false;

function iAbsTop(oObject)
{
    var iTotal = 0, iInc = 0;

    while (oObject != null)
    {
        if (iInc++ > 0) iTotal += oObject.offsetTop;  // Assume the first object is at position 0 (Safari compatibility);
        oObject = oObject.offsetParent;
    }
    return iTotal;
}

function iAbsLeft(oObject)
{
    var iTotal = 0;

    while (oObject != null)
    {
        iTotal += oObject.offsetLeft;
        oObject = oObject.offsetParent;
    }

    return iTotal;
}

// Standard fixed menus
function fMenuClose(sMenu, iHighlight)
{
    var oMenu = document.getElementById(sMenu);
    var oSubmenu = document.getElementById(sMenu + "Sub");

    if (oMenu && iHighlight == 1) fHighlight(oMenu,0);
    if (oMenu && oSubmenu) oSubmenu.style.display="none";
    if (bCombo) fToggle_Combo(1);
}

function fMenuOpen(sMenu, iHighlight)
{
    var oMenu = document.getElementById(sMenu);
    var oMenuPrev = document.getElementById(sMenuPrev);
    var oSubmenu = document.getElementById(sMenu + "Sub");

    if (oMenu && iHighlight == 1) fHighlight(oMenu,1);

    if (oMenu && oSubmenu)
    {
        oSubmenu.style.left = iAbsLeft(oMenu) + "px";
        oSubmenu.style.top = (iAbsTop(oMenu) + oMenu.offsetHeight) + "px";
        oSubmenu.style.display="";

        if (oTimeOut) clearTimeout (oTimeOut);
    }
    if (sMenu!=sMenuPrev && oMenuPrev) fMenuClose (sMenuPrev, iHighlight);
    if (bCombo) fToggle_Combo(0);

    sMenuPrev = sMenu;
}

function fMenuCloseTimer(sMenu, iHighlight)
{
    oTimeOut = setTimeout("fMenuClose(\"" + sMenu + "\", " + iHighlight + ");", 250);
}

function fHighlight(oTemp, iMode)
{
    if (iMode == 1) oTemp.className = oTemp.className.indexOf("on") >= 0 ? oTemp.className : oTemp.className + "on";
    if (iMode == 0) oTemp.className = oTemp.className.replace(/on/g, "");
}

// Determines whether the target browser is IE or not (used for overlay determination)
function fIsIE()
{
    if (navigator.appName.indexOf("Microsoft") != -1)
    {
        var iPos = navigator.appVersion.indexOf("MSIE");
        var iVer = navigator.appVersion.substr(iPos+5, 1).charCodeAt(0)-48;
        
        return iVer >= 7 ? false : true;
    }
    else
    {
        return false;
    }
}

