function AttachEventHandler(mObj, sEvent, mEvent) {
  if (typeof mObj == "string") mObj = document.getElementById(mObj);
  if (mObj.addEventListener) {
    mObj.addEventListener(sEvent, mEvent, false)
  } else if (mObj.attachEvent) {
    mObj.attachEvent("on" + sEvent, mEvent)
  }
}

function ajax_load(url,target) {
  if (window.XMLHttpRequest) {
    req = new XMLHttpRequest();
    req.onreadystatechange = function() { ajax_load_completed(target); };
    req.open("GET", url, true);
    req.send(null);
  } else if (window.ActiveXObject) {
    req = new ActiveXObject("Microsoft.XMLHTTP");
    
    if (req) {
      req.onreadystatechange = function() { ajax_load_completed(target); };
      req.open("GET", url, true);
      req.send();
    }
  }
}    

function ajax_load_completed(target) {
  if (req.readyState == 4) {
    if (req.status == 200) {
      document.getElementById(target).innerHTML = req.responseText;
    } else {
      document.getElementById(target).innerHTML = "Error: " + req.statusText;
    }
  }
}

function opacitySet(obj, opacity) {
  opacity = (opacity == 100)?99.999:opacity;
  
  if (obj) {
  // IE/Win
  obj.style.filter = "alpha(opacity:"+opacity+")";
  
  // Safari<1.2, Konqueror
  obj.style.KHTMLOpacity = opacity/100;
  
  // Older Mozilla and Firefox
  obj.style.MozOpacity = opacity/100;
  
  // Safari 1.2, newer Firefox and Mozilla, CSS3
  obj.style.opacity = opacity/100;
  }
}

function opacityFadeIn(objId, opacity, opacityStop) {
  if (!opacityStop) opacityStop = 100;
  if (document.getElementById) {
    obj = document.getElementById(objId);
    obj.style.display = "block";
    
    if (opacity <= opacityStop) {
      opacitySet(obj, opacity);
      opacity += 1;
      if (window[objId + "out"])
      {
      clearTimeout(window[objId + "out"]);
      window[objId + "out"] = "";
      opacity = window[objId + "outpx"];
      opacitySet(obj, opacity);
      opacity += 1;
      window[objId + "inpx"] = opacity;
      window[objId + "in"] = window.setTimeout("opacityFadeIn('"+objId+"',"+opacity+","+opacityStop+")", 1);
      } else {
      opacitySet(obj, opacity);
      opacity += 1;
      window[objId + "inpx"] = opacity;
      window[objId + "in"] = window.setTimeout("opacityFadeIn('"+objId+"',"+opacity+","+opacityStop+")", 1);
      }
    }
  }
}

function opacityFadeOut(objId, opacity, stopOpacity, hideDiv) {
  if (!stopOpacity) stopOpacity = 0;
  if (!hideDiv) hideDiv = 0;
  


  if (document.getElementById) {
    obj = document.getElementById(objId);


    if (opacity > stopOpacity) {
      if (window[objId + "in"])
      {
      clearTimeout(window[objId + "in"]);
      opacity = window[objId + "inpx"];
      opacitySet(obj, opacity);
      opacity -= 1;
      window[objId + "in"] = "";
      window[objId + "outpx"] = opacity;
      window[objId + "out"] = window.setTimeout("opacityFadeOut('"+objId+"',"+opacity+","+stopOpacity+","+hideDiv+")", 1);
      } else {
      opacitySet(obj, opacity);
      opacity -= 1;
      window[objId + "outpx"] = opacity;
      window[objId + "out"] = window.setTimeout("opacityFadeOut('"+objId+"',"+opacity+","+stopOpacity+","+hideDiv+")", 1);
      }
    } else {
      if (hideDiv == 1) document.getElementById(objId).style.display = "none";
    }
  }
}

function header(e) {
  vHeader.src = (e.type == "mouseover") ? dirImages + "header.gif" : dirImages + "header.png"
}

function login(e) {
  vLogin.src = (e.type == "mouseover") ? dirImages + "navigation-small-login-over.png" : dirImages + "navigation-small-login.png"
}

function logout(e) {
  vLogout.src = (e.type == "mouseover") ? dirImages + "navigation-small-logout-over.png" : dirImages + "navigation-small-logout.png"
}

function resellers(e) {
  vResellers.src = (e.type == "mouseover") ? dirImages + "navigation-small-resellers-over.png" : dirImages + "navigation-small-resellers.png"
}

function sitemap(e) {
  vSitemap.src = (e.type == "mouseover") ? dirImages + "navigation-small-sitemap-over.png" : dirImages + "navigation-small-sitemap.png"
}

function navigation() {
  vHomeList.style.zIndex = "2";
  vServicesList.style.zIndex = "3";
  vSupportList.style.zIndex = "1"
}

function home(e) {
  navigation();
  vHome.src = (e.type == "mouseover") ? dirImages + "navigation-home-over.gif" : dirImages + "navigation-home.gif";
  vHomeList.style.zIndex = "4"
}

function services(e) {
  navigation();
  vServices.src = (e.type == "mouseover") ? dirImages + "navigation-services-over.gif" : dirImages + "navigation-services.gif";
  vServicesList.style.zIndex = "4"
}

function support(e) {
  navigation();
  vSupport.src = (e.type == "mouseover") ? dirImages + "navigation-support-over.gif" : dirImages + "navigation-support.gif";
  vSupportList.style.zIndex = "4"
}

function loadEvents() {
  dirImages = "http://www.dolox.com/images/";

  vHeader = document.getElementById("header-image");
  if (document.getElementById("navigation-small-login")) vLogin = document.getElementById("navigation-small-login");
  if (document.getElementById("navigation-small-logout")) vLogout = document.getElementById("navigation-small-logout");
  vResellers = document.getElementById("navigation-small-resellers");
  vSitemap = document.getElementById("navigation-small-sitemap");
  vHome = document.getElementById("navigation-home-image");
  vServices = document.getElementById("navigation-services-image");
  vSupport = document.getElementById("navigation-support-image");
  vHomeList = document.getElementById("navigation-home");
  vServicesList = document.getElementById("navigation-services");
  vSupportList = document.getElementById("navigation-support");

  AttachEventHandler("header-image", "mouseout", header);
  AttachEventHandler("header-image", "mouseover", header);

  if (vLogin) {
    AttachEventHandler("navigation-small-login", "mouseout", login);
    AttachEventHandler("navigation-small-login", "mouseover", login);
  } else {
    AttachEventHandler("navigation-small-logout", "mouseout", login);
    AttachEventHandler("navigation-small-logout", "mouseover", login);
  }

  AttachEventHandler("navigation-small-resellers", "mouseout", resellers);
  AttachEventHandler("navigation-small-resellers", "mouseover", resellers);
  AttachEventHandler("navigation-small-sitemap", "mouseout", sitemap);
  AttachEventHandler("navigation-small-sitemap", "mouseover", sitemap);
  AttachEventHandler("navigation-home", "mouseout", home);
  AttachEventHandler("navigation-home", "mouseover", home);
  AttachEventHandler("navigation-services", "mouseout", services);
  AttachEventHandler("navigation-services", "mouseover", services);
  AttachEventHandler("navigation-support", "mouseout", support);
  AttachEventHandler("navigation-support", "mouseover", support);
}