// You can also play with these variables to control fade speed, fade color, and how fast the colors jump.

var m_FadeOut = 232;
var m_FadeIn=0;
var m_Fade = 0;
var m_FadeStep = 3;
var m_FadeWait = 1600;
var m_bFadeOut = true;
var fadeit = true;

var m_iFadeInterval;

var arrFadeLinks;
var arrFadeTitles;
var arrFadeClass;
var arrFadeCursor = 0;
var arrFadeMax;

function Fadewl() {

  if(document.getElementById('fade_base')) {
    arrFadeLinks = new Array();
    arrFadeTitles = new Array();
    arrFadeClass = new Array();
    arrFadeAlerts = new Array();
    setupFadeLinks();
    if(arrFadeLinks.length != 0){
      arrFadeMax = arrFadeLinks.length-1;
      setFadeLink();
      m_iFadeInterval = setInterval(fade_ontimer, 10);
      if(arrFadeLinks.length == 1){
          m_bFadeOut = false;
          fadeit = false;
      }
    } else {
       m_bFadeOut = false;
       fadeit = false;
       document.getElementById('fade_base').style.visibility = 'hidden';
       document.getElementById('fade_base').style.display = 'none';
    }

  }

}

function setFadeLink() {
  var ilink = document.getElementById("fade_link");
  ilink.innerHTML = arrFadeTitles[arrFadeCursor];
  ilink.href = arrFadeLinks[arrFadeCursor];
  ilink.className = arrFadeClass[arrFadeCursor];
}

function fade_ontimer() {
  if(fadeit){
    if (m_bFadeOut) {
      m_Fade+=m_FadeStep;
      if (m_Fade>m_FadeOut) {
        arrFadeCursor++;
        if (arrFadeCursor>arrFadeMax)
          arrFadeCursor=0;
        setFadeLink();
        m_bFadeOut = false;
      }
    } else {
      m_Fade-=m_FadeStep;
      if (m_Fade<m_FadeIn) {
        clearInterval(m_iFadeInterval);
        // customization (TSJ)
        // change color if item is an alert
        if(arrFadeAlerts[arrFadeCursor]) {
          ilink = document.getElementById("fade_link");
          ilink.style.color = "#fff";
        }

        setTimeout(Faderesume, m_FadeWait);
        m_bFadeOut=true;
      }
    }
    var ilink = document.getElementById("fade_link");
    if ((m_Fade<m_FadeOut)&&(m_Fade>m_FadeIn))
      ilink.style.color = "#" + ToHex(m_Fade);
  }
}

function Faderesume() {
  m_iFadeInterval = setInterval(fade_ontimer, 10);
}

function ToHex(strValue) {
  try {
    var result= (parseInt(strValue).toString(16));

    while (result.length !=2)
            result= ("0" +result);
    result = result + result + result;
    return result.toUpperCase();
  }
  catch(e)
  {
  }
}

