﻿function addBookmark(title, url) {
    if (window.sidebar) { // firefox
        window.sidebar.addPanel(title, url, "");
    } else if (document.all) { //MSIE
        window.external.AddFavorite(url, title);
    } else {
        alert("Sorry, your browser doesn't support this");
    }
}

function hoverOn(sender) {
    var index = sender.className.indexOf(" pre_selected");
    if (index == -1) {
        if (sender.className == null) {
            sender.className = "pre_selected";
        }
        else {
            sender.className += " pre_selected";
        }
    }
}

function hoverOut(sender) {
    var index = sender.className.indexOf("pre_selected");
    if (index != -1) {
        sender.className = sender.className.replace("pre_selected", "");
    }
}

function changeSort(sender) {
    var value = sender.options[sender.selectedIndex].value;
    var url = document.location.href;

    if (url.indexOf("&sortby") != -1) {
        url = url.replace(/(&)?sortby=(\d)+/g, "&sortby=" + value);
    }
    else {
        url += "&sortby=" + value;
    }

    window.location = url;
}

/* digimall script */
function containsDOM(container, containee) {
    var isParent = false;
    do {
        if ((isParent = (container == containee)))
            break;
        containee = containee.parentNode;
    }
    while (containee != null);
    return isParent;
}


function checkMouseLeave(element, evt) {
    // for IE
    if (element.contains && evt.toElement) {
        return !element.contains(evt.toElement);
    }
    // for other browers
    else if (evt.relatedTarget) {
        return !containsDOM(element, evt.relatedTarget);
    }
}

function showLanguageDropdown(visible, sender, event) {
    var languageDropdown = document.getElementById('pnlLanguagePopup');
    var languageSelect = document.getElementById('selectLanguage');


    var isIE6 = JudgeIsIE6();

    if (languageDropdown != null) {
        var sortDropdown = null;
        if (isIE6 && typeof (dropdownid) != "undefined") {
            sortDropdown = document.getElementById(dropdownid);
        }

        if (visible) {
            languageDropdown.style.display = 'block';
            // languageSelect.style.display = 'none';

            if (sortDropdown != null) {
                sortDropdown.style.visibility = "hidden";
            }

        }
        else {
            if (checkMouseLeave(sender, event)) {
                languageDropdown.style.display = 'none';
                languageSelect.style.display = 'block';

                if (sortDropdown != null) {
                    sortDropdown.style.visibility = "visible";
                }
            }
        }
    }
}

function showCategoryDropdown(visible, sender, event) {
    var categoryDropdown = document.getElementById('pnlCategoryPopup');
    if (navigator.appName == 'Microsoft Internet Explorer') {
        categoryDropdown.style.left = String(document.getElementById('lblCategory').offsetLeft + 277) + 'px';
        categoryDropdown.style.top = String(document.getElementById('lblCategory').offsetTop + 169) + 'px';
    }
    else {
        categoryDropdown.style.left = String(document.getElementById('lblCategory').offsetLeft - 21) + 'px';
        categoryDropdown.style.top = String(document.getElementById('lblCategory').offsetTop - 13) + 'px';
    }
    if (categoryDropdown != null) {
        if (visible) {
            categoryDropdown.style.display = 'block';
        }
        else {
            if (checkMouseLeave(sender, event)) categoryDropdown.style.display = 'none';
        }
    }
}

function searchProduct(textboxId, querystringParameter) {
    var textbox = document.getElementById(textboxId);
    if (textbox == null) {
        return;
    }

    var searchValue = textbox.value.replace(/(^\s*)|(\s*$)/g, "");

    if (searchValue == "") {
        return;
    }

    window.open("SearchResult.aspx?" + querystringParameter + "=" + encodeURI(searchValue), "_self");
}

function ValidateSearchText(textboxId) {
    var textbox = document.getElementById(textboxId);
    if (textbox == null) {
        return false;
    }

    var searchValue = textbox.value.replace(/(^\s*)|(\s*$)/g, "");

    if (searchValue == "") {
        return false;
    }

}

var _rootNode;

function _elemFromE(e) {
    if (e.target) {
        return e.target;
    }
    else if (e.srcElement) {
        return e.srcElement;
    }
    else {
        return false;
    }
}
function _clickHandler(e) {
    if (!e) {
        e = window.event;
    }
    e.cancelBubble = true;
    var elem = _elemFromE(e);
    switch (elem.menuState) {
        case 0:
            _expandItem(elem);
            break;
        case 1:
            _collapseItem(elem);
            break;
    }
    return false;
}
function _collapseItem(pelem) {
    if (pelem.className == "menuToggleOpen") {
        var node = document.getElementById(pelem.id + "_content");
        if (node.className == "menuOpen") {
            node.className = "menuClosed";
        }
        pelem.className = "menuToggle";
        pelem.menuState = 0;
    }
}
function _expandItem(pelem) {
    if (pelem.className == "menuToggle") {
        var node = document.getElementById(pelem.id + "_content");
        if (node.className == "menuClosed") {
            node.className = "menuOpen";
        }
        pelem.className = "menuToggleOpen";
        pelem.menuState = 1;
    }
}
// initial sider bar menu
function siderBarMenu(listElem) {
    _rootNode = document.getElementById(listElem);
    var items = _rootNode.getElementsByTagName("a");
    for (var i = 0; i < items.length; i++) {
        if (items[i].className == "menuToggleOpen") {
            items[i].onclick = _clickHandler; // set the handler
            items[i].menuState = 1; // initial state is expanded
        }
        if (items[i].className == "menuToggle") {
            items[i].onclick = _clickHandler; // set the handler
            items[i].menuState = 0; // initial state is expanded
        }
    }
}

function addLoadEvent(func) {
    var oldonload = window.onload;
    if (typeof window.onload != 'function') {
        window.onload = func;
    } else {
        window.onload = function() {
            oldonload();
            func();
        }
    }
}

function setupEvents() {
    //siderBarMenu("subNavigation");
}






addLoadEvent(setupEvents);

function findPosX(obj) {
    var curleft = 0;
    if (obj.offsetParent)
        while (1) {
        curleft += obj.offsetLeft;
        if (!obj.offsetParent || (obj.offsetParent.tagName && obj.offsetParent.tagName == "BODY"))
            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 || (obj.offsetParent.tagName && obj.offsetParent.tagName == "BODY"))
            break;
        obj = obj.offsetParent;
    }
    else if (obj.y)
        curtop += obj.y;
    return curtop;
}

var toolTipContainer = null;
var toolTipTimerId = 0;
var toolTipOpacity = 0.0;
var toolTipOpacityStep = 10.0;
var toolTipOpacitySpeed = 50;
var toolTipFadingStartingPoint = 500;
var toolTipIsAttached = false;
var toolTipContent = null;
var toolTipIframeIE6Bug = null;
var toolTipIsIe6 = window.navigator.userAgent.indexOf("MSIE 6.0") >= 0;
var toolTipIsOverContainer = false;

function ToolTipCreateContainer() {
    if (toolTipContainer == null) {
        //toolTipContainer = document.createElement("DIV");
        toolTipContainer = document.getElementById("divShowToolTip");
        toolTipContainer.className = "tooltipContainer";
        var ttTop = document.createElement("DIV");
        ttTop.className = "tooltipTop";
        var ttBody = document.createElement("DIV");
        ttBody.className = "tooltipBody";
        toolTipContent = document.createElement("DIV");
        toolTipContent.className = "tooltipContent";
        if (toolTipIsIe6) {
            toolTipIframeIE6Bug = document.createElement("IFRAME");
            toolTipIframeIE6Bug.className = "tooltipIframe";
            toolTipIframeIE6Bug.src = "about:blank";
            toolTipIframeIE6Bug.frameBorder = 0;
            toolTipIframeIE6Bug.style.position = "absolute";
            toolTipIframeIE6Bug.scrolling = "no";
            toolTipContainer.appendChild(toolTipIframeIE6Bug);
        }

        ttBody.appendChild(toolTipContent);
        toolTipContainer.appendChild(ttTop);
        toolTipContainer.appendChild(ttBody);

    }

    if (!toolTipIsAttached) {
        //document.body.appendChild(toolTipContainer);

        if (toolTipContainer.addEventListener) {
            toolTipContainer.addEventListener("mouseover", TooltipContainerOver, false);
            toolTipContainer.addEventListener("mouseout", TooltipContainerOut, false);
        }
        else {
            toolTipContainer.attachEvent("onmouseover", TooltipContainerOver);
            toolTipContainer.attachEvent("onmouseout", TooltipContainerOut);
        }

        toolTipIsAttached = true;
    }

}


function ToolTipAttach(obj, text) {
    if (text != "") {
        obj.setAttribute("tooltipText", text);
        if (obj.addEventListener) {
            obj.addEventListener("mouseover", TooltipShow, false);
            obj.addEventListener("mouseout", TooltipHide, false);
        }
        else {
            obj.attachEvent("onmouseover", TooltipShow);
            obj.attachEvent("onmouseout", TooltipHide);
        }
    }
}

function TooltipSetOpacity() {
    toolTipContainer.style.opacity = toolTipOpacity / 100.0;
    toolTipContainer.style.filter = 'alpha(opacity=' + Math.round(toolTipOpacity) + ')';
}

function TooltipSetPosition(obj) {

    if (obj == document.body) {
        toolTipContainer.style.left = "0px";
        toolTipContainer.style.top = "0px";
        toolTipContainer.style.cursor = "default";
        toolTipContainer.style.zIndex = -1;
    }
    else {
        toolTipContainer.style.left = (findPosX(obj) + (obj.offsetWidth - 40)) + "px";
        //alert(toolTipContainer.style.left);
        toolTipContainer.style.top = (findPosY(obj) - toolTipContainer.offsetHeight + 10) + "px";
        if (toolTipIsIe6) {
            toolTipIframeIE6Bug.width = toolTipContainer.offsetWidth - 2;
            toolTipIframeIE6Bug.height = toolTipContainer.offsetHeight - 20;
        }
        toolTipContainer.style.position = "absolute";
        toolTipContainer.style.cursor = "pointer"; //for mozilla
        toolTipContainer.style.zIndex = 100;
    }
}

function TooltipShow(event) {

    if (!toolTipIsOverContainer) {
        var obj = event["target"] ? event["target"] : event["srcElement"];
        ToolTipCreateContainer();
        toolTipContent.innerHTML = obj.getAttribute("tooltipText");
        toolTipOpacity = 0.0;
        TooltipSetOpacity();
        TooltipSetPosition(obj);
        toolTipTimerId = setTimeout(TooltipTimer, toolTipFadingStartingPoint);
    }
}

function TooltipTimer() {
    toolTipOpacity += toolTipOpacityStep;
    if (toolTipOpacity >= 100.0) {
        toolTipOpacity = 100.0;
        toolTipTimerId = 0;
        TooltipSetOpacity();
    }
    else {
        TooltipSetOpacity();
        toolTipTimerId = setTimeout(TooltipTimer, toolTipOpacitySpeed);
    }
}

function TooltipHide() {
    if (!toolTipIsOverContainer) {
        toolTipOpacity = 0.0;
        TooltipSetOpacity();
        TooltipSetPosition(document.body);
        if (toolTipTimerId != 0) {
            clearTimeout(toolTipTimerId);
            toolTipTimerId = 0;
        }
    }
}

function TooltipContainerOver() {
    toolTipIsOverContainer = true;
}
function TooltipContainerOut() {
    toolTipIsOverContainer = false;
}

function JudgeIsIE6() {
    var browser = navigator.appName
    var b_version = navigator.appVersion
    var version = b_version.split(";");
    var trim_Version = version[1].replace(/[ ]/g, "");
    var isIE6 = browser == "Microsoft Internet Explorer" && trim_Version == "MSIE6.0";
    return isIE6;
}