
/***********************************************
* Fading Ticker Tape Script- © Dynamic Drive (www.dynamicdrive.com)
* This notice must stay intact for use
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

//default speed is 4.5 seconds, Change that as desired
var speed=4500
var rgbPattern = /\brgb\(\s*([\d]{1,3})\s*\,\s*([\d]{1,3})\s*\,\s*([\d]{1,3})\s*\)/i;

var news=new Array()
var datum=new Array()
//Berichten zijn tussen twee datums (inclusief die datum) zichtbaar
//datum[n] = "startdatum-einddatum"
//news[n] = "tekst"
//n moet doorlopend genummerd worden
//datum-formaat: jjjj/mm/dd
datum[0]="2008/01/20-2011/12/31"
news[0]="De training van maandag 24 januari gaat wel door, voor tijden zie email!"
datum[1]="2007/01/01-2007/09/04"
news[1]="Er kan weer ingeschreven worden voor de najaarscursus 2007!"
datum[2]="2005/06/06-2005/08/31"
news[2]="Nog maar 2 weken om in te schrijven voor de najaarscursus 2005."
//expand or shorten this list of messages as desired

var fadescheme=0 //set 0 to fade bgcolor from (white to black), 1 for (black to white)
var hex=(fadescheme==0)? 255 : 0
var startcolor=(fadescheme==0)? "rgb(255,255,255)" : "rgb(51,102,0)"
var endcolor=(fadescheme==0)? "rgb(51,102,0)" : "rgb(255,255,255)"

var numframes = 20;
var frame=numframes;
var divrgb = new Array()
var divrgb = rgbToDec(startcolor, endcolor);
var startrgb =  startcolor.match(rgbPattern)
for (ii=0; ii<startrgb.length; ii++) {
	startrgb[ii] = parseInt(startrgb[ii]);
}
var hex = new Array(startrgb[0],startrgb[1],startrgb[2],startrgb[3]);

var ie=document.all
var ns6=document.getElementById
var ns4=document.layers

ii=0
tickerobject=ie? subtickertape: ns6? document.getElementById("subtickertape") : document.tickertape.document

function regenerate(){
	window.location.reload()
}
function regenerate2(){
	if (document.layers) setTimeout("window.onresize=regenerate",450)
}

function bgcolorfade() {	         	
	// 20 frames fading process
	
	if(frame>0) {	
		//hex=(fadescheme==0)? hex-12 : hex+12 // increase or decrease color value depd on fadescheme
		hex[1] = parseInt(hex[1] + divrgb[1])
		hex[2] = parseInt(hex[2] + divrgb[2])
		hex[3] = parseInt(hex[3] + divrgb[3])
		tickerobject.style.backgroundColor="rgb("+hex[1]+","+hex[2]+","+hex[3]+")"; // Set color value.
		frame--;
		setTimeout("bgcolorfade()",20);	
	} else {
		tickerobject.style.backgroundColor=endcolor;
		frame=numframes;
		hex[1] = startrgb[1]
		hex[2] = startrgb[2]
		hex[3] = startrgb[3]
		//hex=(fadescheme==0)? 255 : 0
	}   
}

function updatecontent(){
	if (ie||ns6)	bgcolorfade()
	var dates = datum[ii].split("-");
	var now = new Date();
  var today = now.getFullYear() + "/" + padd(now.getMonth()+1) + "/" + padd(now.getDate());
  if (dates[0] <= today && dates[1] >= today) {
		if (ns4){
			tickerobject.subtickertape.document.write('<span class="subtickertapefont">'+news[ii]+'</span>')
			tickerobject.subtickertape.document.close()
		}	else {
			tickerobject.innerHTML=news[ii]
		}
	}	
	if (ii<news.length-1) {
		ii++
	}	else {
		ii=0
	}
	setTimeout("updatecontent()",speed)
}

function padd(n) {
	if (n<10) n = "0" + n;
	return n;
}
/** rgbToHex returns a string; replaces rgb values (e.g rgb(xxx,x,xx)) 
*   with hex values. All the rest of the string is left intact
*/
function rgbToDec(inp, onp){
    var rgb = inp.match(rgbPattern)
    var shc = onp.match(rgbPattern)
    var res = new Array();
    res[1] = (shc[1]-rgb[1]) / numframes
    res[2] = (shc[2]-rgb[2]) / numframes
    res[3] = (shc[3]-rgb[3]) / numframes
    return res;
}


