﻿// JScript File

function hideDiv(divName) {
    var dv = document.getElementById(divName);
    if (dv != null)
        dv.style.display = 'none';
}

function doLink(url) {
    window.location = url;
}

function trim(stringToTrim) {
    return stringToTrim.replace( /^\s+|\s+$/g , "");
}

function ltrim(stringToTrim) {
    return stringToTrim.replace( /^\s+/ , "");
}

function rtrim(stringToTrim) {
    return stringToTrim.replace( /\s+$/ , "");
}

var canPopupProductMenu = false;

function productMenuAvailable(objID, isAvailable) {
    canPopupProductMenu = isAvailable;
    popupMenu(objID, isAvailable);
}

function hoverProductButton(objID, display) {
    if (display) {
        document.getElementById('aProducts').setAttribute("class", "left-side-hover");
        document.getElementById('aProducts').setAttribute("className", "left-side-hover");
    } else {
        document.getElementById('aProducts').setAttribute("class", "left-side");
        document.getElementById('aProducts').setAttribute("className", "left-side");
    }
    popupMenu(objID, display);
}

function popupMenu(objID, display) {

    if (!canPopupProductMenu)
        return;

    var obj = document.getElementById(objID);
    var obj2 = document.getElementById(objID + '-dropshadow');

    if (display) {
        document.getElementById('aProducts').setAttribute("class", "left-side-hover");
        document.getElementById('aProducts').setAttribute("className", "left-side-hover");

        obj.style.display = 'block';
        obj2.style.display = 'block';
    } else {
        document.getElementById('aProducts').setAttribute("class", "left-side");
        document.getElementById('aProducts').setAttribute("className", "left-side");


        //canPopupProductMenu = false;
        obj.style.display = 'none';
        obj2.style.display = 'none';
    }
}

var lastPopupMenuID = '';

function closePopup(divID) {
    var outside = document.getElementById('divPopupOutside');
    var inside = document.getElementById(divID);
    var modal = document.getElementById('divPopupModal');

    outside.style.display = 'none';
    inside.style.display = 'none';
    modal.style.display = 'none';
}

function popup(divID, wid, isover, ref, ismodal) {
    var outside = document.getElementById('divPopupOutside');
    var inside = document.getElementById(divID);
    var modal = document.getElementById('divPopupModal');

    if (isover) {

        if (lastPopupMenuID != '') {
            closePopup(lastPopupMenuID);
        }

        lastPopupMenuID = divID;

        changeOpac(0, 'divPopupOutside');
        changeOpac(0, divID);
        changeOpac(0, 'divPopupModal');

        outside.style.display = 'block';
        inside.style.display = 'block';
        if (ismodal)
            modal.style.display = 'block';

        var border = 10;

        var iTop = 0;
        var iWidth = wid;
        var iLeft = 390 - (iWidth / 2);

        inside.style.left = iLeft + 'px';
        inside.style.width = iWidth + 'px';


        //Calculate the TOP
        if (ref != '') {
            var refObj = document.getElementById(ref);
            iTop = findPosY(refObj);
            iTop = iTop - (inside.offsetHeight / 2);
        } else {
            iTop = 0;
        }

        var popupBottom = inside.offsetHeight + iTop;

        var mainContainer = document.getElementById('main-content');

        var absBottom = mainContainer.offsetHeight + findPosY(mainContainer);

        if (popupBottom > absBottom)
            iTop = absBottom - inside.offsetHeight - 30;

        if (iTop < 125)
            iTop = 125;

        inside.style.top = iTop + 'px';

        //End of TOP Calculation

        var oTop = iTop - border;
        var oLeft = iLeft - border;
        var oWidth = inside.offsetWidth;
        var oHeight = inside.offsetHeight;

        outside.style.top = oTop + 'px';
        outside.style.left = oLeft + 'px';
        outside.style.width = oWidth + (border * 2) + 'px';
        outside.style.height = oHeight + (border * 2) + 'px';

        opacity('divPopupOutside', 0, 80, 400);
        opacity(divID, 0, 100, 400);
        opacity('divPopupModal', 0, 5, 400);

    } else {
        closePopup(divID);
    }
}

function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if (opacStart > opacEnd) {
        for (i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    } else if (opacStart < opacEnd) {
        for (i = opacStart; i <= opacEnd; i++) {
            setTimeout("changeOpac(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    }
}

//change the opacity for different browsers

function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}


function findPosX(obj) {
    var curleft = 0;
    if (obj.offsetParent)
        while (1) {
            curleft += obj.offsetLeft;
            if (!obj.offsetParent)
                break;
            obj = obj.offsetParent;
        }
    else if (obj.x)
        curleft += obj.x;
    return curleft;
}

function findPosY(obj) {
    var curtop = 0;
    if (obj.offsetParent)
        while (1) {
            curtop += obj.offsetTop;
            if (!obj.offsetParent)
                break;
            obj = obj.offsetParent;
        }
    else if (obj.y)
        curtop += obj.y;
    return curtop;
}
