

    var theFadeTime = 1000;
    var theFadeStep = 50;
    var theVisibleTime = 10000;

    var theLeadString = new Array();
    var theSummaries = new Array();
    var theSiteLinks = new Array();

    var theItemCount = 6;

    theLeadString[0] = "QESTLab&trade used on US$1bn road project in Texas";
    theSummaries[0] = "<br>(24 June 2010) Spectra QEST announces that its software is being used to test construction materials on the US$1.02 billion DFW Connector road project in Texas, USA. ";
    theSiteLinks[0] = "/news_100624.htm";

    theLeadString[1] = "";
    theSummaries[1] = "<I>&quot;With the help of the entire Spectra QEST team we are...building a strong foundation that can support profitable growth for years to come.&quot;</I>  <br>Marshall Hammack, CFO, Professional Service Industries, Inc.  ";
    theSiteLinks[1] = "/testimonials_psi.htm";

    theLeadString[2] = "Braun Intertec Corporation implements QESTLab&trade; ";
    theSummaries[2] = "<br>(30 May 2009) Braun Intertec Corporation, an Environmental and Engineering consulting firm headquartered in Minnesota, USA, implements QESTLab&trade;. ";
    theSiteLinks[2] = "/news_090530.htm";

    theLeadString[3] = "";
    theSummaries[3] = "<I>&quot;Dealing with Spectra QEST has been a pleasure...I am confident in having a reliable development partner in Spectra QEST.&quot;</I>  <br>Brian Hase, Director of IT, Braun Intertec Corporation. ";
    theSiteLinks[3] = "/testimonials_bi.htm";

    theLeadString[4] = "QESTLab&trade; v3.2 released ";
    theSummaries[4] = "<br>(17 July 2009) Spectra QEST announced that QESTLab&trade; v3.2 was released to selected customers today. ";
    theSiteLinks[4] = "/news_090717.htm";

    theLeadString[5] = "";
    theSummaries[5] = "<I>&quot;QESTLab&trade; transformed our laboratory operations...with the centralized information management...we saw immediate improvement in productivity, consistency and quality.&quot;</I>  <br>J. Parsons, P.E., Director of Lab Operations, NTH Consultants.";
    theSiteLinks[5] = "/testimonials_nth.htm";

    startTicker();


    // Ticker startup
    function startTicker() {
        // Define run time values
        theCurrentStory = -1;
        theCurrentLength = 0;
        theCurrentTime = 0;

        // Locate base objects
        if (document.getElementById) {
            theAnchorObject = document.getElementById("tickerAnchor");
            runTheFadeTicker();
        }
        else {
            document.write("<style>.ticki{display:none;}.ticko{border:0px; padding:0px;}</style>");
            return true;
        }
    }


    // Ticker main run loop
    function runTheFadeTicker() {
        var myTimeout;

        // Go for the next story data block
        if (theCurrentTime == 0) {
            theCurrentStory++;
            theCurrentStory = theCurrentStory % theItemCount;
            theStorySummary = theSummaries[theCurrentStory].replace(/"/g, '"');
            theTargetLink = theSiteLinks[theCurrentStory];
            theAnchorObject.href = theTargetLink;
            thePrefix = "<span class=\"tickls\">" + theLeadString[theCurrentStory] + "</span>";
            theCycleTime = theVisibleTime + 2 * theFadeTime;
            theAnchorObject.innerHTML = thePrefix + theStorySummary;
        }

        // Modify the length for the substring and define the timer
        if (theCurrentTime < theFadeTime) {
            changeOpac(theCurrentTime / theFadeTime, theAnchorObject); 
            theCurrentTime += theFadeStep;
            myTimeout = theFadeStep;
        }
        else if (theCurrentTime < theVisibleTime + theFadeTime) {
            changeOpac(1, theAnchorObject);
            theCurrentTime += theVisibleTime;
            myTimeout = theVisibleTime;
        }
        else if (theCurrentTime < theCycleTime) {
            changeOpac((theCycleTime - theCurrentTime) / theFadeTime, theAnchorObject); 
            theCurrentTime += theFadeStep;
            myTimeout = theFadeStep;
        }
        else {
            changeOpac(0, theAnchorObject);
            theCurrentTime = 0;
            myTimeout = theFadeStep;
        }
        
        // Call up the next cycle of the ticker
        setTimeout("runTheFadeTicker()", myTimeout);
    }

    //change the opacity for different browsers
    function changeOpac(opacity, element) {
        //var object = document.getElementById(id).style;
        element.style.opacity = opacity;
        element.style.MozOpacity = opacity;
        element.style.KhtmlOpacity = opacity;
        element.style.filter = "alpha(opacity = " + Math.round(100 * opacity) + ")";
    }