var or;
var og;
var ob;
var imax = 50;
var f;
var y = 398;
var y1 = 70;
var y2 = 398;
var dt = 4;
var lp;
var i;

hexa = new Array(16);
for (var i = 0; i < 10; i++)
{ hexa[i] = i;
}
hexa[10]="a"; hexa[11]="b"; hexa[12]="c";
hexa[13]="d"; hexa[14]="e"; hexa[15]="f";
pix = new Array(10);
imgs = new Array(imax);
alts = new Array(imax);
alts[0] = 'grow';
alts[1] = 'protect';
alts[2] = 'lead';
alts[3] = 'swim';
alts[4] = 'abstract';
alts[5] = 'track';
alts[6] = 'taste';
alts[7] = 'compose';
alts[8] = 'inspire';
alts[9] = 'reach';
alts[10] = 'innovate';
alts[11] = 'explore';
alts[12] = 'convey';
alts[13] = 'intrigue';
alts[14] = 'respond';
alts[15] = 'shine';
alts[16] = 'nurture';
alts[17] = 'diversify';
alts[18] = 'announce';
alts[19] = 'bloom';
alts[20] = 'engineer';
alts[21] = 'encapsulate';
alts[22] = 'endure';
alts[23] = 'deliver';
alts[24] = 'express';
alts[25] = 'invite';
alts[26] = 'play';
alts[27] = 'laugh';
alts[28] = 'tower';
alts[29] = 'scrutinise';
alts[30] = 'reflect';
alts[31] = 'scorn';
alts[32] = 'entrap';
alts[33] = 'propel';
alts[34] = 'swing';
alts[35] = 'set';
alts[36] = 'soar';
alts[37] = 'speed';
alts[38] = 'pose';
alts[39] = 'uplift';
alts[40] = 'sail';
alts[41] = 'cook';
alts[42] = 'tilt';
alts[43] = 'repel';
alts[44] = 'look';
alts[45] = 'feed';
alts[46] = 'spin';
alts[47] = 'emit';
alts[48] = 'secure';
alts[49] = 'sprint';

for (i=0; i<imax; i++)
{ eval("imgs[i] = preload('images/box"+i+".gif')");
}

var fs = 4;

function init()
{
	or = parseInt(document.bgColor.substr(1,2),16);
	og = parseInt(document.bgColor.substr(3,2),16);
	ob = parseInt(document.bgColor.substr(5,2),16);
	fadeIn('slogan', fs, or, og, ob);
	rpix();
	setTimeout('atick()',20);
}
 
function rpix()
{
	var p;
	var j;
	var u;
	var v;
	var xx;
	for (p=1; p<10; p++)
	{ u = 1;
		while (u==1)
		{ pix[p] = Math.floor(Math.random()*imax);
			v = 0;
			for (j=1; j<p; j++)
			{ if (pix[j] == pix[p])
				{ v = 1;
					break;
				}
			}
			if (v==0) u = 0;
		}
		xx = 'box'+p;
		document.getElementById(xx).src = imgs[pix[p]].src;
		document.getElementById(xx).alt = alts[pix[p]];
	}
	lp = p;
	setTimeout('rpix1()',5000);
}

function rpix1()
{	
	var j;
	var u;
	var v;
	var xx;
	var p = lp;
	while (p == lp)
	{ p = Math.floor(Math.random()*9)+1;
	}
	u = 1;
	while (u == 1)
	{ pix[p] = Math.floor(Math.random()*imax);
		v = 0;
		for (j=1; j<10; j++)
		{ if (j != p)
			{ if (pix[j] == pix[p])
				{ v = 1;
					break;
				}
			}
		}
		if (v==0) u = 0;	
	}
	xx = 'box'+p;
	document.getElementById(xx).src = imgs[pix[p]].src;
	document.getElementById(xx).alt = alts[pix[p]];
	lp = p;
	setTimeout('rpix1()',3000);
}

function atick()
{
	var yy;
	y += dt;
	yy = y+'px';
	document.getElementById('tick2').style.top = yy;
	if ((dt>0 && y>=y2) || (dt<0 && y<=y1))
	{ dt *= -1;
		document.getElementById('blip').style.top = yy;
		document.getElementById('blip').style.visibility = 'visible';
		setTimeout('atick()',100);
	}
	else
	{ document.getElementById('blip').style.visibility = 'hidden';
		setTimeout('atick()',20);
	}
}

function fadeIn(el, dx, r, g, b)
{ 
	document.getElementById(el).style.color = '#'+hex(r)+hex(g)+hex(b);
	if (r < 255 || g < 255 || b < 255)
	{ r = r + dx;
		if (r > 255) r = 255;
    g = g + dx;
		if (g > 255) g = 255;
    b = b + dx;
		if (b > 255) b = 255;
		setTimeout("fadeIn('"+el+"',"+dx+","+r+","+g+","+b+")",10);
	}
  else
	{	setTimeout("fadeOut('"+el+"',"+dx+","+r+","+g+","+b+")",6000);
  }
}

function fadeOut(el, dx, r, g, b)
{ 
	document.getElementById(el).style.color = '#'+hex(r)+hex(g)+hex(b);
	if (r>or || g>og || b>ob)
	{ r = r - dx;
		if (r <or) r =or;
    g = g - dx;
		if (g <og) g = og;
    b = b - dx;
		if (b < ob) b = ob;
 		setTimeout("fadeOut('"+el+"',"+dx+","+r+","+g+","+b+")",10);
	}
	else
	{ setTimeout("fadeIn('"+el+"',"+dx+","+r+","+g+","+b+")",6000);
  }
}

function hex(i)
{
  if (i < 0)
    return "00";
  else if (i > 255)
    return "ff";
  else
    return "" + hexa[Math.floor(i/16)] + hexa[i%16];
}
