
/**********************************************************************************   
NewsSlideFade 
*   Copyright (C) 2001 Thomas Brattli
*   This script was released at DHTMLCentral.com
*   Visit for more great scripts!
*   This may be used and changed freely as long as this msg is intact!
*   We will also appreciate any links you could give us.
*
*   Made by Thomas Brattli
*
*   Script date: 09/04/2001 (keep this date to check versions) 
*********************************************************************************/
function lib_bwcheck(){ //Browsercheck (needed)
	this.ver=navigator.appVersion;
	this.agent=navigator.userAgent;
	this.dom=document.getElementById?1:0;
	this.opera5=(navigator.userAgent.indexOf("Opera")>-1 && document.getElementById)?1:0;
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
	this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
	this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
	this.ie=this.ie4||this.ie5||this.ie6;
	this.mac=this.agent.indexOf("Mac")>-1;
	this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
	this.ns4=(document.layers && !this.dom)?1:0;
	this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5);
	return this;
}
var bw=lib_bwcheck();

/***************************************************************************
Use the style tag to change the placement and width of the layers.
If you are trying to place this into a table cell or something make the
position of the divNewsCont layer relative...Remeber that that might crash
Netscape 4 though, Good luck!
********************************************************************************/

/****
Variables to set 
****/

//How do you want the script to work? 
//0 = Fade in - Fade out
//1 = Slide in - Fade out
//2 = Random 
nWorks = 0;

//If you use the slide set these variables:
nSlidespeed = 5; //in px
nNewsheight = 140; //This is how long down it should start the slide.

nBetweendelay = 9000; //The delay before fading out.
nFadespeed = 40; //The speed to fade in, in milliseconds.

//Set the colors, first color is same as background, last color is the color it stops at:
//You can have as many colors you want
nColor=new Array('#FFFFFF', '#EEEEEE', '#CCCCCC', '#999999','#666666','#333333','#000000');

//This is the news you wanna have, set the link and the text. If you don't wan't it to link anywhere
//use a # as the link
nNews=new Array();
//Copy there three lines and change the info and numbers to get more news.
nNews[0]=new Array();
nNews[0]["text"]="<span id='divNewsTitre'>FINALE NATIONALE de la COUPE de France des SLALOMS 2007</span><br />Samedi 22 et dimanche 23 septembre 2007.<br />Circuit Francis MAILLET Compétition à CHAMBLEY.<br />ANIMATIONS DIVERSES. Voir la rubrique ARTICLES<br />pour plus d'informations.";
nNews[1]=new Array();
nNews[1]["text"]="<span id='divNewsTitre'>Bienvenue sur fmaillet.com</span><br />Découvrez tout notre potentiel en visitant le site !<br />Inscrivez-vous et participez au contenu !<br />N'hésitez pas à  nous contacter !";
nNews[2]=new Array();
nNews[2]["text"]="<span id='divNewsTitre'>Stages de formation aux risques routiers</span><br />Maîtriser son véhicule et savoir réagir en toutes circonstances sont des conditions indispensables à  la réduction des accidents.";
nNews[3]=new Array();
nNews[3]["text"]="<span id='divNewsTitre'>Ecole de Pilotage : Sport et Loisirs Mécaniques</span><br />Nous vous proposons des cours de pilotage, la location de notre circuit, de nos salles et espaces, journées clé en main et journées d'animations.";
nNews[4]=new Array();
nNews[4]["text"]="<span id='divNewsTitre'>Le livre d'or</span><br />Vous pouvez nous laisser des messages sur notre livre d'or. <br />Un petit mot sympa, un petit coucou ... une remarque <br />N'hésitez pas !";


/********************************************************************************
Object code...Object constructors and functions...
********************************************************************************/
function makeNewsObj(obj,nest,color,news,fadespeed,betweendelay,slidespeed,works,newsheight){
        nest=(!nest) ? "":'document.'+nest+'.';
   	this.css=bw.dom? document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+"document.layers." +obj):0;	
   	this.writeref=bw.dom? document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+"document.layers." +obj+".document"):0;
	
		this.color=new Array(); 
		this.color=eval(color); 
		this.news=new Array(); 
		this.news=eval(news)
		this.speed=fadespeed; 
		this.delay=betweendelay; 
		this.newsheight=newsheight;
		this.fadeIn=b_fadeIn;
		this.fadeOut=b_fadeOut; 
		this.newsWrite=b_newsWrite; 
		this.y=1;
		this.slideIn=b_slideIn; 
		this.moveIt=b_moveIt; 
		this.slideSpeed=slidespeed; 
		this.works=works;		
	
	this.obj = obj + "Object";
 	eval(this.obj + "=this"); 
	return this;
}

// A unit of measure that will be added when setting the position of a layer.
var px = bw.ns4||window.opera?"":"px";

function b_moveIt(x,y){
	this.x=x; 
	this.y=y; 
	this.css.left=this.x+px; 
	this.css.top=this.y+px;
}
function b_newsWrite(num,i){	
		this.writeref.innerHTML = '<span id="'+this.obj+'link' +'">'+this.news[num]['text']+'</span>';	
}
//Slide in
function b_slideIn(num,i){
	if (this.y>0){
		if (i==0){
			this.moveIt(0,this.newsheight); 
			this.newsWrite(num,this.color.length-1);
		}
		this.moveIt(this.x,this.y-this.slideSpeed);
		i++;
		setTimeout(this.obj+".slideIn("+num+","+i+");",50);
	} else {
		setTimeout(this.obj+".fadeOut("+num+","+(this.color.length-1)+")",this.delay);
	}
}
//The fade functions
function b_fadeIn(num,i){
	if (i<this.color.length){
		if (i==0 || bw.ns4){
			this.newsWrite(num,i);
		} else{
			obj = bw.ie4?eval(this.obj+"link"):document.getElementById(this.obj+"link")
			obj.style.color = this.color[i]
		}
		i++;
		setTimeout(this.obj+".fadeIn("+num+","+i+")",this.speed);
	} else {
		setTimeout(this.obj+".fadeOut("+num+","+(this.color.length-1)+")",this.delay);
	}
}

function b_fadeOut(num,i){
	if (i>=0){
		if (i==0 || bw.ns4){
			this.newsWrite(num,i);	
		} else {
			obj = bw.ie4?eval(this.obj+"link"):document.getElementById(this.obj+"link");
			obj.style.color = this.color[i];
		}
		i--;
		setTimeout(this.obj+".fadeOut("+num+","+i+")",this.speed);
	} else {
		num++;
		if(num==this.news.length){
			num=0;
		}
		works = !this.works?0:this.works==1?1:Math.round(Math.random());
		if(works==0){
			setTimeout(this.obj+".fadeIn("+num+",0)",500);
		} else if (works==1){
			this.y=1; 
			setTimeout(this.obj+".slideIn("+num+",0)",500);
		}
	}
}
/********************************************************************************************
The init function. Calls the object constructor and set some properties and starts the fade
*********************************************************************************************/
function fadeInit(){
	oNews = new makeNewsObj('divNews','divNewsCont',"nColor","nNews",nFadespeed,nBetweendelay,nSlidespeed,nWorks,nNewsheight);
	oNewsCont = new makeNewsObj('divNewsCont');
	works = !oNews.works?0:oNews.works==1?1:Math.round(Math.random());
	if (works==0){
		oNews.fadeIn(0,0);
	} else if (works==1){
		oNews.slideIn(0,0);
	}
	oNewsCont.css.visibility = "visible"
}

//Calls the init function on pageload. 
//if(bw.bw) onload = fadeInit;



