﻿// JScript File

function init()
{
    init_tape_ticker();
    rotateTestimonials();
}

window.onload = init;




function get_tkr_array() {
    return tkr_array;
}


var gu_tkr_linked = false, gu_tkr_unlinked, gu_tkr, gu_position, tkr_buttons;
var tkrtape = false, tkrtarget;
var tkr_pos = 0, tkr_item = 0;
var tkr_paused = false;
var tkr_tid = false;
var tkr_pausebutton;

function tick() {
    if (gu_tkr_linked) { // only run if we have found the container item

        clearTkrTid();

        if (tkr_pos == 0) { // if we're starting a new news item...

	        if (tkr_item == 0) { // ...and we're at the beginning, and there's a new array pending...
		        var tkr = get_tkr_array();
		        if (tkr) {
			        tkr_array = tkr.concat();
		        }
	        }

	        tkrtape = tkr_array[tkr_item];
	        tkrtarget = tkr_array[tkr_item + 1];

	        if (tkrtarget) {
		        if (tkrtarget.indexOf('WebX') == -1) {
			        if (tkrtarget.indexOf('?') > -1) {
				        tkrtarget += '';
			        } else {
				        tkrtarget += '';
			        }
		        }
		        gu_tkr_linked.href = tkrtarget;
		        gu_tkr = gu_tkr_linked;
	        } else {
		        gu_tkr = gu_tkr_unlinked;
	        }
	        gu_tkr_unlinked.innerHTML = '';
	        gu_tkr_linked.innerHTML = '';
        }

        // Handle HTML elements embedded in the trail text
        if (tkrtape.charAt(tkr_pos - 1) == '&') {
	        while (tkr_pos <= tkrtape.length && tkrtape.charAt(tkr_pos++) != ';') { /* do nothing */ }
        }

        var overlapping = tkr_pos > 0 && (parseInt(gu_position.offsetTop) > parseInt(tkr_buttons.offsetTop) - 5 && parseInt(gu_position.offsetLeft) > parseInt(tkr_buttons.offsetLeft) - 30);
        if (overlapping) {
	        gu_tkr.innerHTML = tkrtape.substring(0,tkr_pos) + '...';
        } else {
	        gu_tkr.innerHTML = tkrtape.substring(0,tkr_pos);
        }
        if (tkr_pos > tkrtape.length || overlapping) {
	        tkr_pos = 0;
	        tkr_item = (tkr_item + 2) % tkr_array.length;
	        if (!tkr_paused) tkr_tid = window.setTimeout("tick();",1000);
        } else {
	        tkr_pos += 1;
	        if (!tkr_paused) tkr_tid = window.setTimeout("tick();",40);
        }
    }
}

function clearTkrTid() {
    if (tkr_tid) window.clearTimeout(tkr_tid);
    tkr_tid = false;
}

function prevStory(next) {
    if (tkr_pos == 0) {
        // If tkr_pos == 0 it means we've fully displayed one link
        // and are now ready to show the next. In this case, we
        // need to go back one link, i.e. to the link currently displayed,
        // before going back again.
        tkr_item = (tkr_item == 0 ? tkr_array.length : tkr_item) - 2;
    } else {
        tkr_pos = 0;
    }
    tkr_item = (tkr_item == 0 ? tkr_array.length : tkr_item) - 2;

    if (tkr_paused) {
        pauseTicker();
    } else {
        clearTkrTid();
        tick();
    }

    return false;
}

function nextStory() {
    if (tkr_pos != 0) {
        tkr_pos = 0;
        tkr_item = (tkr_item + 2) % tkr_array.length;
    }

    if (tkr_paused) {
        pauseTicker();
    } else {
        clearTkrTid();
        tick();
    }

    return false;
}

function pauseTicker() {

    clearTkrTid();

    if (tkr_paused) {
        tkr_paused = false;
        tkr_pausebutton.className = 'tkr_button';
        nextStory();
    } else {
        tkr_paused = true;
        tkr_pausebutton.className = 'tkr_grey';
        while (tkr_pos != 0) {
	        tick();
        }
    }

    return false;
}

function init_tape_ticker() {


    tkr_buttons = document.getElementById('gu_tkr_buttons');

    // pre-cache images
    tkr_pausebutton = document.getElementById('pausebutton');

    gu_tkr_linked = document.getElementById("gu_tkr_linked");
    gu_tkr_unlinked = document.getElementById("gu_tkr_unlinked");
    gu_position = document.getElementById("gu_tkr_positioner");

    tick();
}


/* Rotating Testimonial */

var nIndex = 0;
var timerID = null;

function rotateTestimonials(){
    var para = document.getElementById('pTestimonial')
    if (para !=null) {
        var len = testimonial_array.length;
        if(nIndex >= len)
            nIndex = 0;
        para.innerHTML = 
            testimonial_array[nIndex] + '<br />' + 
            '<span class="strong">' + testimonial_array[nIndex+1] + '</span>' ;
        nIndex += 2;
        timerID = setTimeout('rotateTestimonials()',15000);
    }
}

