function hex2num(hex){
	if(hex.charAt(0) == "#"){hex=hex.slice(1);}
	hex=hex.toUpperCase();
	var hex_alphabets = "0123456789ABCDEF";
	var value = new Array(3);
	var k = 0;
	var int1,int2;
	for (var i=0;i<6;i+=2){
		int1 = hex_alphabets.indexOf(hex.charAt(i));
		int2 = hex_alphabets.indexOf(hex.charAt(i+1));
		value[k] = (int1*16) + int2;
		k++;
	}
	return (value);
}
function num2hex(triplet){
	var hex_alphabets = "0123456789ABCDEF";
	var hex = "#";
	var int1,int2;
	for (var i=0;i<3;i++){
		int1 = triplet[i] / 16;
		int2 = triplet[i] % 16;
		hex += hex_alphabets.charAt(int1) + hex_alphabets.charAt(int2);
	}
	return (hex);
}
function slidemenu(x,b){
	if(x.id!=dm&&sl==0){
		var c=0; d=0;
		var begintext="#000000";
		var beginbanner="#77DD77";
		var endtext="#999999";
		var endbanner="#999999";
		var differencetext = new Array(3); 
		var differencebanner = new Array(3);
		var dbo = new Array(3);
		var dbi = new Array(3);
		var dbc = new Array(3);
		var starttext=hex2num(begintext);
		var startbanner=hex2num(beginbanner);
		var stoptext=hex2num(endtext);
		var stopbanner=hex2num(endbanner);
		var bbco=hex2num(buttons['current'][0]);
		var bbci=hex2num(buttons['current'][1]);
		var bbho=hex2num(buttons[b.id][0]);
		var bbto=hex2num(buttons[b.id][0]);
		var bbhi=hex2num(buttons[b.id][1]);
		if(dm){b.style.background=buttons[b.id][0];}
		else{b.style.background=buttons[b.id][1];}
		sl=1;
		if(dm){
			y=findObj(dm);
			ys=findObj(dm+'_head');
			z=findObj(db);
		}
		for(var i=0;i<3;i++){
			starttext[i] = Number(starttext[i]);
			startbanner[i] = Number(startbanner[i]);
			stoptext[i] = Number (stoptext[i]);
			stopbanner[i] = Number (stopbanner[i]);
			bbco[i] = Number (bbco[i]);
			bbci[i] = Number (bbci[i]);
			bbho[i] = Number (bbho[i]);
			bbto[i] = Number (bbto[i]);
			bbhi[i] = Number (bbhi[i]);
			differencetext[i] = (stoptext[i] - starttext[i])/16;
			differencebanner[i] = (stopbanner[i] - startbanner[i])/16;
			dbo[i] = (bbho[i] - bbco[i])/16;
			dbi[i] = (bbhi[i] - bbci[i])/16;
			dbc[i] = (bbhi[i] - bbto[i])/16;
			if(dm){buttons[b.id][1]=buttons[b.id][0];}
			else{buttons[b.id][0]=buttons[b.id][1];}
		}
		if(dm){
			fadeoutbutton=setInterval(function () {
				if (d<16){
					d++;
					for (var i=0;i<3;i++){
						bbto[i] += dbc[i];
					}
					b.style.background=num2hex(bbto);
					buttons[b.id][0]=num2hex(bbto);
					buttons[b.id][1]=num2hex(bbto);
				}else{
					clearInterval(fadeoutbutton);
				}
			},50)
		}
		fadeout=setInterval(function () {
			if (c<16){
				c++;
				for (var i=0;i<3;i++){
					starttext[i] += differencetext[i];
					startbanner[i] += differencebanner[i];
					bbci[i] += dbi[i];
					bbco[i] += dbo[i];
				}
				if(dm){
					y.style.color=num2hex(starttext);
					ys.style.background=num2hex(startbanner);
					z.style.background=num2hex(bbci);
					buttons[db][0]=num2hex(bbco);
					buttons[db][1]=num2hex(bbci);
				}
			}else{
				clearInterval(fadeout);
				xt=parseInt(x.style.top);
				if(dm)yt=parseInt(y.style.top);
				bnc=1;sp=.25;hw=xt/4;
				slide=setInterval(function () {
						if (xt<bnc){
								if(dm){y.style.top=(parseInt(yt+=sp))+'px'; }
								x.style.top=(parseInt(xt+=sp))+'px';
								if(dm){if(xt<hw){sp+=sp*.08;}else{sp-=sp*.08;}}else{sp=1;}
						}else if (xt>bnc){
								xt=bnc;
								x.style.top=(bnc)+'px';
						}else{
							clearInterval(slide);
							xs=findObj(x.id+'_head');
							fadein=setInterval(function () {
								if (c>0){
									c--;
									for (var i=0;i<3;i++){
										starttext[i] -= differencetext[i];
										startbanner[i] -= differencebanner[i];
										bbhi[i] -= dbi[i];
										bbho[i] -= dbo[i];
									}
									x.style.color=num2hex(starttext);
									xs.style.background=num2hex(startbanner);
									b.style.background=num2hex(bbhi);
									buttons[b.id][0]=num2hex(bbho);
									buttons[b.id][1]=num2hex(bbhi);
								}else{
									clearInterval(fadein);
									if(dm)y.style.top="-240px";
									dm=x.id;
									db=b.id;
									sl=0;
								}
							},50)
						}
				},10);
			}
		},10);
	}
}
function disploading(t){
		var c=0; d=0;
		var btc="#000000";
		var etc="#FFFFFF";
		var dt = new Array(3); 
		var btc=hex2num(btc);
		var etc=hex2num(etc);
		for(var i=0;i<3;i++){
			btc[i] = Number(btc[i]);
			etc[i] = Number(etc[i]);
			dt[i] = (etc[i] - btc[i])/16;
		}
		fo=setInterval(function () {
			if (c<16){
				d=parseInt((100/16)*c);
				c++;
				for (var i=0;i<3;i++){
					btc[i] += dt[i];
				}
				findObj(t).innerHTML="<span style='color:"+num2hex(btc)+";'>Loading "+d+"%</span>";
			}else{
				clearInterval(fo);
				findObj(t).innerHTML="";
			}
		},100)
}