/*
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

Improved for Mozilla 1.3 and better, Peter Russ, 4dfx, www.4dfx.de.
*/

    bname=navigator.appName;
    var dtDOM=20;
    var dtNet=2;
    var fdfx_wait=2000;
    bversion=parseInt(navigator.appVersion)
    var z=0;
    var msg=0;
    var rgb=0;
    var link=false;
    var status=true;
    var updwn=false;
	var moveIt=false;
    var message= new Array();
    var value=0;
    var h=window.innerheight;
    var w=window.innerwidth;
    var timer1;
    var timer2;
    var timer3;
    var textanim=null;
    var textanimlink=null;
    var convert = new Array();
    var eleTextAni='fdfx_textanim';
    var hexbase= new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F");


    var fdfx_bgcolor="#FFFFFF"; //color of background
    var fdfx_color="#0000FF";  //color of the letters

    message[0]='For More Information.'
    message[1]='Visit Today.'
    message[2]='4D f/x Kommunikationsservice'
    message[3]='<a href="http://4dfx.de">Find out more...</a>'

    // Put here your own messages. Add as many as you wan't (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];
        }
    }

    if ((bname=="Netscape" && bversion>=4) || (bname=="Microsoft Internet Explorer" && bversion>=4))
    {
        window.onload=fdfx_text_ani_start;
    } else {
        fdfx_text_ani_stop();
    }
    window.onunload=fdfx_text_ani_stop;

    function fdfx_text_ani_init()
    {
        if (bname=="Netscape" && bversion< 5)
        {
            brows=true;
            dt=dtNet;
        } else {
            brows=false;
            dt=dtDOM;
        }
    }

    function fdfx_text_ani_setColor(color,bgcolor)
    {
        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 fdfx_text_ani_start(){
        if ((bname=="Netscape" && bversion>=4) || (bname=="Microsoft Internet Explorer" && bversion>=4))
        {
            fdfx_text_ani_init();
            fdfx_text_ani_setColor(fdfx_color,fdfx_bgcolor);
            link=false;
            updwn=true;
            if (brows)
            {
                res=document.layers[eleTextAni].top
            } else{
                 if (textanim==null)
                 {
                     textanim=(document.getElementById)? document.getElementById(eleTextAni):document.all[eleTextAni];
                     if (textanim==null) return;
                     textanim.style.position="relative";
                     textanim.style.top=0;
                     textanim.style.left=0;
                     textanim.onclick=breakf;
                     var sp="\n";
                     var inner=textanim.innerHTML;
                     if (inner!="")
                     {
                         var fdfx_message=inner.split(sp);
						 message=new Array();
						 var j=0;
						 //Check if text to display found
						 for (var i=0;i<fdfx_message.length;i++)
						 {
						 	var input=fdfx_message[i];
							input=input.replace(/<\/?.*?>/gi,''); // replace all tags
							input=input.replace(/&nbsp;/," ");
							input=input.match(/\S.+/);
							if (input!=null)
							{
								message[j++]=fdfx_message[i];
							}
						 }
                     }

                     if (document.getElementById)
                     {
                         textanimlink=document.getElementsByName("fdfx_textanimlink");
                         link=(textanimlink.length>0);
                     } else if (document.all){
                         for (x=0; x<document.all.length; x++)
                        {
                              if(document.all[x].name=="fdfx_textanimlink")
                              {
                                 link=true;
                              }
                         }
                     }
                 }
                 if (textanim)
                 {
                     textanim.innerHTML='<p class="fdfx_main">'+message[msg]+'</p>';
                     res=textanim.style.top;
                 }
              }
              up();
        }
    }

    function fdfx_text_ani_stop()
    {
        clearTimeout(timer1);
        clearTimeout(timer2);
        clearTimeout(timer3);
    }

    function resz()
    {
        h=window.innerHeight;
        w=window.innerWidth;
        if (updwn)
        {
            timer1=setTimeout('up()',1000);
        } else {
            timer2=setTimeout('down()',1000);
        }
    }

    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;
        if (brows){
            document.layers[eleTextAni].document.linkColor=rgb;
            document.layers[eleTextAni].document.vlinkColor=rgb;
            if (window.innerHeight!=h || window.innerWidth!=w)
            {
                clearTimeout(timer1);
                resz();
                return;
            }else{
                document.layers[eleTextAni].document.write('<p class="fdfx_main"><font color="'+rgb+'">'+message[msg]+'</font></p>')
                document.layers[eleTextAni].document.close();
            }
        }else{
            textanim.style.color=rgb;
            if(link)
            {
                for (i=0;i<textanimlink.length;i++)
                {
                    textanimlink[i].style.color=rgb;
                }
            }
        }
        if (z<38)
        {
			if (moveIt)
			{
	            if (brows)
	            {
	                document.layers[eleTextAni].top--;
	            }else{
	                if (textanim.style.posTop)
	                {
	                    textanim.style.posTop--;
	                } else {
	                    textanim.style.top=parseInt(textanim.style.top)-1;
	                }
	            }
			}
            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;
        if (brows)
        {
            document.layers[eleTextAni].document.linkColor=rgb;
            document.layers[eleTextAni].document.vlinkColor=rgb;
            if (window.innerHeight!=h || window.innerWidth!=w)
            {
                clearTimeout(timer2);
                resz();
                return;
            }else{
                document.layers[eleTextAni].document.write('<p class="fdfx_main"><font color="'+rgb+'">'+message[msg]+'</font></p>')
                document.layers[eleTextAni].document.close();
            }
        }else{
            textanim.style.color=rgb;
            if(link)
            {
                for (i=0;i<textanimlink.length;i++)
                {
                    textanimlink[i].style.color=rgb;
                }
            }
        }
        if (z<76)
        {
			if (moveIt)
			{
	            if (brows)
	            {
	                document.layers[eleTextAni].top--;
	            }else{
	                if (textanim.style.posTop)
	                {
	                    textanim.style.posTop--;
	                } else {
	                    textanim.style.top=parseInt(textanim.style.top)-1;
	                }
	            }
			}
            z++;
            timer2=setTimeout('down()',dt);
        }else{
            if (brows)
            {
                document.layers[eleTextAni].document.write('');
                document.layers[eleTextAni].document.close();
            }else{
                textanim.innerHTML='';
            }
            window.clearInterval(timer2);
            if(msg<message.length-1)
            {
                msg++;
                z=0;
                if (brows)
                {
                    document.layers[eleTextAni].top=res;
                }else{
                    textanim.style.top=res;
                }
                timer3=setTimeout('fdfx_text_ani_start()',fdfx_wait);
            }else{
                msg=0;
                z=0;
                if (brows)
                {
                    document.layers[eleTextAni].top=res;
                }else{
                    textanim.style.top=res;
                }
                timer3=setTimeout('fdfx_text_ani_start()',fdfx_wait);
            }
        }
    }