﻿function setupTitle() {
  arrFadeTitles[0] = "Air, Ocean, Rail Intermodal, Truckload, Project Cargo";
  arrFadeTitles[1] = "Supply Chain Engineering, SaaS, Outsourced Logistics, Warehousing";
  arrFadeTitles[2] = "Real-Time Order-to-Cash Supply Chain Management";
  arrFadeTitles[3] = "Providing Supply Chain Solutions and Complete Global and Domestic Transportation Services";
}

//colors range from 0-255 this controls the color it fades to
var m_FadeOut = 255;
//how long it takes to fadein
var m_FadeIn = 190;
var m_Color = 5;
var m_Fade = 5;
var m_FadeStep = 1;
var m_FadeWait = 8000;
var m_bFadeOut = true;

var m_iFadeInterval;

window.onload = Fadewl;

var arrFadeTitles;
var arrFadeCursor = -1;
var arrFadeMax;

function Fadewl() {
  m_iFadeInterval = setInterval(fade_ontimer, 15);
  arrFadeTitles = new Array();
  setupTitle();
  arrFadeMax = arrFadeTitles.length - 1;
  setFadeTitles();
}

//displays the first message which is set to the last message in the array
function setFadeTitles() {
  var ilink = document.getElementById("fade_link");
  ilink.innerHTML = arrFadeTitles[3];
}

function fade_ontimer() {
  if (m_bFadeOut) {
    m_Fade -= m_FadeStep;
    
    if (m_Fade < m_FadeIn) {
      arrFadeCursor++;
      if (arrFadeCursor > arrFadeMax) {
          arrFadeCursor = 0;
      }
      m_bFadeOut = false;
    }
  } else {
    m_Fade += m_FadeStep;
    if (m_Fade > m_FadeOut) {
      clearInterval(m_iFadeInterval);
      setTimeout(Faderesume, m_FadeWait);
      m_bFadeOut = true;
    }
    }
    
  //controls the speed of which one message disappears and the next message appears
  var ilink = document.getElementById("fade_link");
  if ((m_Fade < m_FadeOut) && (m_Fade > m_FadeIn)) {
    if (m_Fade < 195) {
      ilink.innerHTML = " ";
    } else {
      ilink.innerHTML = arrFadeTitles[arrFadeCursor];
      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) {
  }
}
