/*
 * All rights reserved by Shurli.com 2006 - 2009
 * If you want to use this script please ask for permission at team@shurli.com, nav@shurli.com or kuljot@shurli.com
 * Please visit us www.shurli.com  and www.punjabione.com
 */ 

function TickerBar(oAppendTo) {
    var oThis = this;
    this.timer = null;
    this.links = [];
	var tickerContainer = document.getElementById("tickerBarContainer");
	if(tickerContainer)
	{
		this.tickerContainer = tickerContainer;
	    this.ticker1 = document.createElement("nobr");
		this.ticker2 = document.createElement("nobr");
	    this.ticker1.className = "tickerBar1";
		this.ticker2.className = "tickerBar2";
		this.ticker1.id = "tickerBar1";
		this.ticker2.id = "tickerBar2";
		this.iTickerLength1 = 0;
		this.iTickerLength2 = 0;
	    this.tickerContainer.onmouseover = function () {
	        clearTimeout(oThis.timer);
	    };
	    this.tickerContainer.onmouseout = function () {
	        oThis.tick();
	    };
	    this.tickerContainer.appendChild(this.ticker1);
		this.tickerContainer.appendChild(this.ticker2);
	    this.tick();
	}
}

TickerBar.prototype.tick = function () {
    this.iTickerLength1 = this.ticker1.offsetWidth;
    this.iTickerLength2 = this.ticker2.offsetWidth;
	
    var oThis = this;
    var doSetTimeout = function() {
        oThis.tick();
    };
    if (this.ticker1.innerHTML) {
        if (this.ticker1.offsetLeft > -this.iTickerLength1) {
            var iNewLeft = this.ticker1.offsetLeft - 2;
            this.ticker1.style.left = iNewLeft + "px";
        } else {
            this.ticker1.style.left = this.ticker2.offsetLeft + this.ticker2.offsetWidth + "px";
        }
    }
	if (this.ticker2.innerHTML){
        if (this.ticker2.offsetLeft > -this.iTickerLength2) {
        var iNewLeft = this.ticker2.offsetLeft - 2;
        this.ticker2.style.left = iNewLeft + "px";
		
        } else {
            this.ticker2.style.left = this.ticker1.offsetLeft + this.ticker1.offsetWidth + "px";
        }	
	}
    this.timer = setTimeout(doSetTimeout,1);
}

TickerBar.prototype.add = function (sUrl, sImage, sToolTip, sLinkText) {
    var linksLength = this.links.length;
    this.links[linksLength] = new TickerBarLink(this, sUrl, sImage, sToolTip, sLinkText);
};

function TickerBarLink(oParent, sUrl, sImage, sToolTip, sLinkText) {
    this.parent = oParent;
    this.url = sUrl;
	this.image = sImage;
	this.tooltip = sToolTip;
	this.linktext = sLinkText;
	this.defaulttext = null;
    this.container = null;
	this.populateTicker();
}

TickerBarLink.prototype.populateTicker = function () {
	this.tickerContainer = document.getElementById("tickerBarContainer");
    var spanLinkContainer = document.createElement("span");
    var aLinkTitle = document.createElement("a");
    aLinkTitle.className = "tickerBar-linkTitle";
    aLinkTitle.href = this.url;
	if(this.image)
	{
		var imgLinkImage = document.createElement("img");
		imgLinkImage.src = this.image;
		imgLinkImage.title = this.tooltip;
		imgLinkImage.border = 0;
		aLinkTitle.appendChild(imgLinkImage);
	}
	if(this.linktext)
	{
		var divLinkText = document.createElement("span");
		divLinkText.innerHTML = this.linktext;
		aLinkTitle.appendChild(divLinkText);
	}
    spanLinkContainer.appendChild(aLinkTitle);
	if(!this.ticker1)
	{
		this.ticker1 = document.getElementById("tickerBar1");
	}
	this.ticker1.appendChild(spanLinkContainer);
	//this.ticker1.style.left = this.tickerContainer.offsetWidth;
	
    var spanLinkContainer1 = document.createElement("span");
    var aLinkTitle1 = document.createElement("a");
    aLinkTitle1.className = "tickerBar-linkTitle";
    aLinkTitle1.href = this.url;
	if(this.image)
	{
		var imgLinkImage1 = document.createElement("img");
		imgLinkImage1.src = this.image;
		imgLinkImage1.title = this.tooltip;
		imgLinkImage1.border = 0;
		imgLinkImage1.onmouseover = function() {;};
		imgLinkImage1.onmouseout = function() {;};
		aLinkTitle1.appendChild(imgLinkImage1);
	}
	if(this.linktext)
	{
		var divLinkText1 = document.createElement("span");
		divLinkText1.innerHTML = this.linktext;
		aLinkTitle1.appendChild(divLinkText1);
	}
    spanLinkContainer1.appendChild(aLinkTitle1);	
	if(!this.ticker2)
	{
		this.ticker2 = document.getElementById("tickerBar2");
	}
	this.ticker2.appendChild(spanLinkContainer1);
}
