﻿function onload(){
    var viewcode = document.getElementById('viewcode');
    if(viewcode){
        viewcode.href = '/viewcode.html#'+location;
        viewcode.target = "_blank";
    }
        
    var products = document.getElementById('products');
    if(products){
        var productslist = document.getElementById('productslist');
        
        function show(){
            productslist.style.display = 'block';
            clearTimeout(productslist.hideTimer);
        }
        function hide(){
            productslist.hideTimer = setTimeout(function(){
                productslist.style.display = 'none';
            }, 200);
        }
        
        products.onmouseover = show;
        products.onmouseout = hide;
        productslist.onmouseover = show;
        productslist.onmouseout = hide;
    }
}
setTimeout(onload, 100);

var isLocalFile = location.href.indexOf('file:') != -1;
if(!window.XMLHttpRequest || (document.all && isLocalFile)){
    window.XMLHttpRequest = function(){
        var progIDs = ['Microsoft.XMLHTTP','Msxml2.XMLHTTP'];
        for(var i=0; i<progIDs.length; i++){
            try{
                var xmlHttp = new ActiveXObject(progIDs[i]);
                return xmlHttp;
            }catch(ex){
            }
        }
        return null;
    }
}
function Ajax(url, callback){
    var xmlHttp = new XMLHttpRequest();
    xmlHttp.open("GET", url, true);
    xmlHttp.onreadystatechange = function(){        
        var statusCode = isLocalFile ? 0 : 200;
        if (xmlHttp.readyState === 4) {
            if(xmlHttp.status === statusCode) {            
                callback(xmlHttp.responseText);        
            }            
            xmlHttp.onreadystatechange = null;
        }
    }    
    xmlHttp.send(null);
}
