﻿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;
}