/*
Script created by Lefteris Haritou
(lef@the.forthnet.gr)
Permission granted to Dynamicdrive.com to feature the script
For more DHTML scripts, visit Dynamicdrive.com
*/


var speedup=0; // by M.M.

bname=navigator.appName;
bversion=parseInt(navigator.appVersion)
if ((bname=="Netscape" && bversion>=4) ||(bname=="Microsoft Internet Explorer" && bversion>=4))
window.onload=start
else
stop();
window.onunload=stop
if (bname=="Netscape" && document.layers){ // by M.M. - firefox has no document.layers
brows=true
dt=2
}
else{
brows=false
dt=20
dt=40 // by M.M.
}

var z=0;
var msg=0;
var rgb=0;
var rgb2=0; // by M.M.

var link=false;
var status=true;
var updwn=false;
var message= new Array();
var value=0;
var h=window.innerHeight;
var w=window.innerWidth;
var timer1;
var timer2;
var timer3;
var convert = new Array()
var hexbase= new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F");

// Put your own messages here. Add as many as you like (Do not edit anything else in the Script except the lines below).

var bgcolor="#FFFFFF"; //Color of background
var color="#0000b9"; //Color of the Letters
var color="#0000dd";


/*







*/

fi=0;
message = Array ();
message[fi++]='<a href="http://dynamicdrive.com">Click here to begin THE experience</a>';

// Put your own messages here. Add as many as you like (Do not edit anything else in the Script except the lines above).

for (x=0; x<16; x++){
for (y=0; y<16; y++){
convert[value]= hexbase[x] + hexbase[y];
value++;
}
}

redx=color.substring(1,3);
greenx=color.substring(3,5);
bluex=color.substring(5,7);
hred=eval(parseInt(redx,16));
hgreen=eval(parseInt(greenx,16));
hblue=eval(parseInt(bluex,16));
eredx=bgcolor.substring(1,3);
egreenx=bgcolor.substring(3,5);
ebluex=bgcolor.substring(5,7);
ered=eval(parseInt(eredx,16));
egreen=eval(parseInt(egreenx,16));
eblue=eval(parseInt(ebluex,16));
red=ered;
green=egreen;
blue=eblue;

function start(){
	
// by M.M.: na firefoxu to sice funguje, ale nechutne spomaluje pocitac, navic vrstva prekryva random message a about this site
if ((bname=="NetscapeXXX" && bversion>=4) || (bname=="Microsoft Internet Explorer" && bversion>=4)){
link=false;
updwn=true;
if (brows)
res=document.layers['textanim'].top
else{
textanim.style.width=document.body.offsetWidth-20;
//textanim.innerHTML='<adiv class="textanimpre"><Prd><p class="textanimstyle">'+message[msg]+'</p></Prd></adiv>'
textanim.innerHTML='<Pre><P Class="main" Align="Center">'+message[msg]+'</P></Pre>'
res=textanim.style.top
for (x=0; x<document.all.length; x++)
if(document.all[x].id=="textanimlink")
link=true;
}
up()
}
}

function stop(){
clearTimeout(timer1);
clearTimeout(timer2);
clearTimeout(timer3);
}

function resz(){
h=window.innerHeight;
w=window.innerWidth;
if (updwn)
timer1=setTimeout('up()',2000)
else
timer2=setTimeout('down()',2000)
}

function breakf(){
if (status){
clearTimeout(timer1);
clearTimeout(timer2);
status=false
return;
}
else{
status=true;
if (updwn)
timer1=setTimeout('up()',dt)
else
timer2=setTimeout('down()',dt)
}
}


function up(){
if (red<hred){
if ((red+7)<hred)
red+=7;
else
red=hred
redx = convert[red]
}
else{
if ((red-7)>hred)
red-=7;
else
red=hred
redx = convert[red]
}

if (green<hgreen){
if ((green+7)<hgreen)
green+=7;
else
green=hgreen
greenx = convert[green]
}
else{
if ((green-7)>hgreen)
green-=7;
else
green=hgreen
greenx = convert[green]
}

if (blue<hblue){
if ((blue+7)<hblue)
blue+=7;
else
blue=hblue
bluex = convert[blue]
}
else{
if ((blue-7)>hblue)
blue-=7;
else
blue=hblue
bluex = convert[blue]
}

rgb = "#"+redx+greenx+bluex;
rgb2 = "#"+bluex+greenx+redx; //by M.M.

if (brows){
	document.layers['textanim'].document.linkColor=rgb;
	document.layers['textanim'].document.vlinkColor=rgb;
	if (window.innerHeight!=h || window.innerWidth!=w){
		clearTimeout(timer1);
		resz()
		return;
	}
	else{
	document.layers['textanim'].document.write('<Pre><P Class="main" Align="Center"><span style="color: #'+rgb+'">'+message[msg]+'</span></P></Pre>')
	document.layers['textanim'].document.close();
	}
}
else{
//	textanim = document.getElementById ('textanim');
	textanim.style.color=rgb;
	if(link)
	{
		textanimlink.style.color=rgb2;
	}
}
if (z<38){
if (brows)
document.layers['textanim'].top--
else
{
	textanim.style.posTop-=speedup // by M.M. - replaced -- by -=speedup
}

z++
timer1=setTimeout('up()',dt)
}
else
{
updwn=false;
down()
}
}


function down(){
if (red<ered){
if ((red+7)<ered)
red+=7;
else
red=ered
redx = convert[red]
}
else{
if ((red-7)>ered)
red-=7;
else
red=ered
redx = convert[red]
}

if (green<egreen){
if ((green+7)<egreen)
green+=7;
else
green=egreen
greenx = convert[green]
}
else{
if ((green-7)>egreen)
green-=7;
else
green=egreen
greenx = convert[green]
}

if (blue<eblue){
if ((blue+7)<eblue)
blue+=7;
else
blue=eblue
bluex = convert[blue]
}
else{
if ((blue-7)>eblue)
blue-=7;
else
blue=eblue
bluex = convert[blue]
}

rgb = "#"+redx+greenx+bluex;
rgb2 = "#"+bluex+greenx+redx; // by M.M.
if (brows){
document.layers['textanim'].document.linkColor=rgb;
document.layers['textanim'].document.vlinkColor=rgb;
if (window.innerHeight!=h || window.innerWidth!=w){
clearTimeout(timer2);
resz()
return;
}
else{
document.layers['textanim'].document.write('<Pre><P Class="main" Align="Center"><span style="color:'+rgb+'">'+message[msg]+'</span></P></Pre>')
document.layers['textanim'].document.close();
}
}
else{
textanim.style.color=rgb;
if(link)
textanimlink.style.color=rgb2;
}

if (z<76){
if (brows)
document.layers['textanim'].top--
else
textanim.style.posTop-=speedup // by M.M. - replaced -- by -=speedup
z++
timer2=setTimeout('down()',dt)
}
else
{
if (brows){
document.layers['textanim'].document.write('')
document.layers['textanim'].document.close();
}
else
textanim.innerHTML='';
window.clearInterval(timer2);
if(msg<message.length-1){
msg++;
z=0;
if (brows){
document.layers['textanim'].top=res;
}
else
textanim.style.top=res;
timer3=setTimeout('start()',100);
}
else
{
msg=0;
z=0;
if (brows)
document.layers['textanim'].top=res;
else
textanim.style.top=res;
timer3=setTimeout('start()',2000);
}
}
}

// by M.M. - function start and stop messages

var messagesaved = null;

function stopmessages ()
{
	messagesaved = message;
	message = new Array ('');
	fi = 0;
}

function startmessages ()
{
	if (messagesaved)
	{
		message = messagesaved;
		messagesaved = null;
	}
}

function setmessage (s)
{
	messagesaved = null;
	message[fi++] = s;
}
