﻿/* Browser Detection */
var isMac = false;
var isSafari = false;
var isFirefox = false;
var isMSIE = false;
var isMSIE6 = false;

if (navigator.userAgent.indexOf("Macintosh") != -1) {
    isMac = true;
}

if (navigator.userAgent.indexOf("Safari") != -1) {
    isSafari = true;
} else if (navigator.userAgent.indexOf("MSIE") != -1) {
    isMSIE = true;
    if (navigator.userAgent.indexOf("MSIE 6.0") != -1) {
        isMSIE6 = true;
    }
} else if (navigator.userAgent.indexOf("Firefox") != -1) {
    isFirefox = true;
}

/* Preloading and Rollovers */
var rolloverOn;
var rolloverOff;
var rolloverImages;
var topNav;
var topNavImages;
var topNavSection = -1;

//addLoadEvent(preloadRollovers);

addLoadEvent(preloadRollovers);

// Enables Assignment of Multiple window.onload Functions
function addLoadEvent(func) {
    var oldonload = window.onload;
    if (typeof window.onload != 'function') {
        window.onload = func;
    } else {
        window.onload = function() {
            if (oldonload) {
                oldonload();
            }
            func();
        }
    }
}


function tnavSelect(currSection) {
    topNavSection = currSection - 1;
    addLoadEvent(tnavSet);
}

function tnavSet() {
    topNav = document.getElementById("upper_nav");
    topNavImages = topNav.getElementsByTagName("img");
    if (topNavImages.length != 0) {
        if (topNavSection != -1) {
            currNavImage = topNavImages[topNavSection];
            rolloverLight(currNavImage.id, currNavImage.navid);
            removeMouseListeners(currNavImage);
        }
    }
}

function preloadRollovers(roImages) {
    if (document.images) {
        var currMax = 0;

        rolloverImages = getElementsByTagClass("img", "rollover").concat(getElementsByTagClass("input", "rollover"));
        rolloverOn = new Array(rolloverImages.length);
        rolloverOff = new Array(rolloverImages.length);

        /*if (roImages == null) {
        rolloverImages = getElementsByTagClass("img", "rollover").concat(getElementsByTagClass("input", "rollover"));
        rolloverOn = new Array(rolloverImages.length);
        rolloverOff = new Array(rolloverImages.length);
        } else {
        rolloverImages = roImages;
        currMax = rolloverOff.length;
        }*/
        for (var i = 0; i < rolloverImages.length; i++) {
            rolloverOff[i + currMax] = new Image();
            rolloverOn[i + currMax] = new Image();

            if (isMSIE6 && isPNG(rolloverImages[i])) {
                rolloverOff[i + currMax].src = getPNGSrc(rolloverImages[i].runtimeStyle.filter);
            } else {
                rolloverOff[i + currMax].src = rolloverImages[i].src;
            }

            rolloverOn[i + currMax].src = getRolloverSrc(rolloverOff[i + currMax].src);
            rolloverImages[i].navid = i + currMax;
            if (rolloverImages[i].name.indexOf("$") == -1) {
                rolloverImages[i].name = "rollover" + (i + currMax);
                rolloverImages[i].id = "rollover" + (i + currMax);
            }

            setMouseListeners(rolloverImages[i]);
        }
    }
}

function setMouseListeners(roImage) {
    roImage.onmouseover = function() {
        rolloverLight(this.id, this.navid);
    };
    roImage.onmouseout = function() {
        rolloverDim(this.id, this.navid);
    };
}

function removeMouseListeners(roImage) {
    roImage.onmouseover = function() { };
    roImage.onmouseout = function() { };
}

function getElementsByTagClass(tagName, className) {
    var matches = new Array();
    var matchesByTag = document.getElementsByTagName(tagName);
    for (var i = 0; i < matchesByTag.length; i++) {
        if (matchesByTag[i].className.indexOf(className) != -1) {
            matches.push(matchesByTag[i]);
        }
    }
    return matches;
}

function getSelectedSrc(offSrc) {
    var regEx;
    if (offSrc.indexOf("_on.png") == -1) {
        regEx = new RegExp("_off.png");
    } else {
        regEx = new RegExp("_on.png");
    }
    return offSrc.replace(regEx, "_down.png");
}

function getRolloverSrc(offSrc) {
    var regEx = new RegExp("_off.png");
    return offSrc.replace(regEx, "_on.png");
}

function getRolloutSrc(offSrc) {
    var regEx = new RegExp("_on.png");
    return offSrc.replace(regEx, "_off.png");
}

function rolloverLight(imgID, navID) {
    if (document.images) {
        if (isMSIE6 && isPNG(document.getElementById(imgID))) {
            document.getElementById(imgID).runtimeStyle.filter = getRolloverSrc(document.getElementById(imgID).runtimeStyle.filter);
        } else {
            document.getElementById(imgID).src = rolloverOn[navID].src;
        }
    }
}

function rolloverDim(imgID, navID) {
    if (document.images) {
        if (isMSIE6 && isPNG(document.getElementById(imgID))) {
            document.getElementById(imgID).runtimeStyle.filter = getRolloutSrc(document.getElementById(imgID).runtimeStyle.filter);
        } else {
            document.getElementById(imgID).src = rolloverOff[navID].src;
        }
    }
}

function isPNG(img) {
    return ((img.src.toLowerCase().indexOf(".png") != -1) || (img.runtimeStyle.filter.toLowerCase().indexOf(".png") != -1));
}

function getPNGSrc(pngFilter) {
    var startSearch = "AlphaImageLoader(src='";
    var start = pngFilter.indexOf(startSearch) + startSearch.length;
    var end = pngFilter.indexOf("'", start);
    return pngFilter.substring(start, end);
}

//Gets Parameter Values from QueryString
function getParamValue(paramName) {
    paramName += "=";
    var paramLength = paramName.length;
    var start = -1;
    if (location.search.indexOf("?" + paramName) != -1) {
        start = location.search.indexOf("?" + paramName) + 1;
    } else if (location.search.indexOf("&" + paramName) != -1) {
        start = location.search.indexOf("&" + paramName) + 1;
    }
    if (start != -1) {
        if (location.search.indexOf("&", start + 1) != -1) {
            tempValue = location.search.substring(start + paramLength, location.search.indexOf("&", start + 1));
        }
        else {
            tempValue = location.search.substring(start + paramLength);
        }
        return tempValue;
    }
    else {
        return null;
    }
}

// used on product pages to display retailer offsite links in popup
function displayBuyNowPopup() {
    buyNowPopupDiv = document.getElementById("buynow_popup");
    if (buyNowPopupDiv != 0) {
        buyNowPopupDiv.style.display = "block";
    }
}

// used on product pages to hide retailer offsite links in popup
function closeBuyNowPopup() {
    buyNowPopupDiv = document.getElementById("buynow_popup");
    if (buyNowPopupDiv != 0) {
        buyNowPopupDiv.style.display = "none";
    }
}
$(document).ready(function() {
    $(".openclose").click(function() {

        theLink = $(this);
        objectid = $(this).attr('rel');
        $(objectid).toggle(100,function() {

            if ($(objectid).css("display") == "block") {
                $('.indicator', theLink).html("&mdash;");
                $(this).parent().attr('class', 'questionopen');
            } else {
                $('.indicator', theLink).html("+");
                $(this).parent().attr('class', 'question');
            }

        });

    });
});
