/*
Author:		Marcel Petz
Contact:	Marcel.Petz@MZA.de
Company:	Fischer-Cross-Media GmbH (Medien-Zentrum Aichelberg)
Project:	Website of Lapp Group, Newsticker javascript
Filename:	newsticker3.js
Date:		2002-03-12
Description:	provides basic functions for use of a newsticker
		Usage:	call function newsticker with appropriate options. 
			It is not necessary to change anything in this file
			The appearance can be controlled by CSS. The newsticker
			line is in a span with id "newsticker". Zou can control
			font appearances with newsticker, links follow the normal
			css definitons (a, a:visited etc.).
ToDo:		Support for Netscape 4
Changelog:	-
*/


//Definition of global variables. 
var s_height;
var s_width;
var s_bordercolor = "red"; //border color of scroller, no function yet
var s_text;
//var s_borderwidth = 2; //not supported due to incompatible browser functions: IE draws borders inside the textbox, NS6 draws borders arround the textbox 8-(
var s_scrollspeed;
var s_scrollcontrol = 1;


//constructor
function newsticker(ticker_width, ticker_height, ticker_text, ticker_speed, ticker_color, ticker_bgcolor, ticker_bgimg) {
	s_width = ticker_width;
	s_height = ticker_height;
	s_bgcolor = ticker_bgcolor;
	s_text = ticker_text;
	s_scrollspeed = ticker_speed;
	if (document.layers) {
		document.write('<ilayer width='+ticker_width+' height='+ticker_height+' name="slider1" bgcolor='+ticker_bgcolor+' visibility=hide><layer name="slider2" onMouseover="s_scrollcontrol=0;" onMouseout="s_scrollcontrol=1"></layer></ilayer>');
		document.slider1.visibility="show";
		ns4marquee(document.slider1.document.slider2);
	} else {
		document.write('<div style="position:relative;overflow:hidden;width:'+s_width+'; height:'+s_height+'; background-color:'+s_bgcolor+';border:0px solid '+s_bordercolor+';" onMouseover="s_scrollcontrol=0;" onMouseout="s_scrollcontrol=1";background-image:'+ ticker_bgimg +')>');
		document.write('<div id="slider" style="position:relative;">');
		document.write('<span id=newsticker class="articletext"><nobr>'+ ticker_text + '</nobr></span>');
		document.write('</div></div>');
		document.getElementById("slider").style.visibility="visible";
		dom_marquee(document.getElementById("slider"));
	}
}


function ns4marquee(whichlayer) {
	ns4layer=eval(whichlayer);
	ns4layer.document.write(s_text);
	ns4layer.document.close();
	sizeup=ns4layer.document.width;
	ns4layer.left-=s_width;
	ns4slide();
}


function ns4slide() {
	if (ns4layer.left>=sizeup*(-1)){
		ns4layer.left-=s_scrollspeed;
		setTimeout("ns4slide()",100);
	}
	else{
		ns4layer.left=s_width;
		//ns4slide()
	}
}

function dom_marquee(whichdiv) {
	dom_div=eval(whichdiv);
	dom_div.style.left=s_width;
	sizeup=s_width;
	dom_slide();
	setInterval("dom_slide()",s_scrollspeed);
}


function dom_slide(){
	if (parseInt(dom_div.style.left)>=document.getElementById("slider").offsetWidth*(-1)){
		dom_div.style.left=parseInt(dom_div.style.left)-s_scrollcontrol;
	}
	else {
		dom_div.style.left=s_width;
	}
}
