var hs=new Object();
var rg=new Object();
swatch=0;
function sample_go()
{ 
	

}
function htmlgo()
 { 
	k=document.getElementById('html').value;
	j = k.replace('#','');
	red = j.substr(0,2);
	gre = j.substr(2,2);
	blu = j.substr(4,2);
	r.setValue(parseInt(red,16));
	g.setValue(parseInt(gre,16));
	b.setValue(parseInt(blu,16));
	
}

function hexpicker()
{
	R = HexToR(document.getElementById('colhex').value);
	G = HexToG(document.getElementById('colhex').value);
	B = HexToB(document.getElementById('colhex').value);

	function HexToR(h) { return parseInt((cutHex(h)).substring(0,2),16) }
	function HexToG(h) { return parseInt((cutHex(h)).substring(2,4),16) }
	function HexToB(h) { return parseInt((cutHex(h)).substring(4,6),16) }
	function cutHex(h) { return (h.charAt(0)=="#") ? h.substring(1,7) : h}

	r.setValue(R);
	g.setValue(G);
	b.setValue(B);
	
	document.getElementById("colhex").value= '#'+d2h(R)+d2h(G)+d2h(B);
}


function colpicker(h)
{

	j=(h.substr(4,h.indexOf(")")-4)).split(",");
	r.setValue(j[0]);
	g.setValue(j[1]);
	b.setValue(j[2]);
	document.getElementById("colhex").value= '#'+d2h(j[0])+d2h(j[1])+d2h(j[2]);
}

function c2r(d,h)
{
	swatch=h;
	k=document.getElementById(d).style.backgroundColor;
	j=(k.substr(4,k.indexOf(")")-4)).split(",");
	r.setValue(j[0]);
	g.setValue(j[1]);
	b.setValue(j[2]);
}
function load_theme()
{
	sel = document.getElementById("coltheme");
	var d = sel.options[sel.selectedIndex].value;
	j=d.split(",");
	r.setValue(j[0]);
	g.setValue(j[1]);
	b.setValue(j[2]);
}

function ud(x,c)
{
	
	document.getElementById("sw"+x).style.backgroundColor="rgb("+c.r+","+c.g+","+c.b+")";
	//document.getElementById("hc"+x).innerHTML="#"+rg2html(c) + "<br />R: "+c.r+"<br />G: "+c.g+"<br />B: "+c.b;
	document.getElementById("col"+x).value="#"+rg2html(c);
	document.getElementById("colhex").value="#"+rg2html(c);
	if(x == 0) 
		{
		//document.getElementById("bookmark").value="http://color.twysted.net/?color="+rg2html(c);
	}
}
function pointer(x)
{
	//document.getElementById("pointer").style.backgroundImage="url(../goocolors/custom/images/"+x+".gif)";
	document.getElementById("sw"+x).style.borderWidth="3px";
	document.getElementById("sw"+x).style.borderColor="#FFFFFF";
	if(x != 0) {
	   document.getElementById("sw0").style.borderWidth="1px";
	   document.getElementById("sw0").style.borderColor="#000000";
	}
	if(x != 1) {
	   document.getElementById("sw1").style.borderWidth="1px";
	   document.getElementById("sw1").style.borderColor="#000000";
	}
	if(x != 2) {
	   document.getElementById("sw2").style.borderWidth="1px";
	   document.getElementById("sw2").style.borderColor="#000000";
	}
	if(x != 3) {
	   document.getElementById("sw3").style.borderWidth="1px";
	   document.getElementById("sw3").style.borderColor="#000000";
	}
	if(x != 4) {
	   document.getElementById("sw4").style.borderWidth="1px";
	   document.getElementById("sw4").style.borderColor="#000000";
	}
	
}
function rg2html(z)
{
	return d2h(z.r)+d2h(z.g)+d2h(z.b);
}
function d2h(d)
{
	hch="0123456789ABCDEF";
	a=d%16;
	q=(d-a)/16;
	return hch.charAt(q)+hch.charAt(a);
}
function h2r(hs)
{
	var rg=new Object();
	if(hs.s==0)
	{
		rg.r=rg.g=rg.b=Math.round(hs.v*2.55);
		return rg;
	}
	hs.s=hs.s/100;
	hs.v=hs.v/100;
	hs.h/=60;
	i=Math.floor(hs.h);
	f=hs.h-i;
	p=hs.v*(1-hs.s);
	q=hs.v*(1-hs.s*f);
	t=hs.v*(1-hs.s*(1-f));
	switch(i)
	{
		case 0:rg.r=hs.v;
		rg.g=t;
		rg.b=p;
		break;
		case 1:rg.r=q;
		rg.g=hs.v;
		rg.b=p;
		break;
		case 2:rg.r=p;
		rg.g=hs.v;
		rg.b=t;
		break;
		case 3:rg.r=p;
		rg.g=q;
		rg.b=hs.v;
		break;
		case 4:rg.r=t;
		rg.g=p;
		rg.b=hs.v;
		break;
		default:rg.r=hs.v;
		rg.g=p;
		rg.b=q;
	}
	rg.r=Math.round(rg.r*255);
	rg.g=Math.round(rg.g*255);
	rg.b=Math.round(rg.b*255);
	return rg;
}
function rc(x,m)
{
	if(x>m)
	{
		return m
	}
	if(x<0)
	{
		return 0
	}
	else
	{
		return x
	}
}
function rg2hs(rg)
{
	m=rg.r;
	if(rg.g<m)
	{
		m=rg.g
	};
	if(rg.b<m)
	{
		m=rg.b
	};
	v=rg.r;
	if(rg.g>v)
	{
		v=rg.g
	};
	if(rg.b>v)
	{
		v=rg.b
	};
	value=100*v/255;
	delta=v-m;
	if(v==0.0)
	{
		hs.s=0
	}
	else
	{
		hs.s=100*delta/v
	};
	if(hs.s==0)
	{
		hs.h=0
	}
	else
	{
		if(rg.r==v)
		{
			hs.h=60.0*(rg.g-rg.b)/delta
		}
		else if(rg.g==v)
		{
			hs.h=120.0+60.0*(rg.b-rg.r)/delta
		}
		else if(rg.b=v)
		{
			hs.h=240.0+60.0*(rg.r-rg.g)/delta
		}
		if(hs.h<0.0)
		{
			hs.h=hs.h+360.0
		}
	}
	hs.v=Math.round(value);
	hs.h=Math.round(hs.h);
	hs.s=Math.round(hs.s);
	return(true);
}
function dom()
{
	z=new Object();
	y=new Object();
	yx=new Object();
	p=new Object();
	pr=new Object();
	p.s=y.s=hs.s;
	p.h=y.h=hs.h;
	if(hs.v>70)
	{
		y.v=hs.v-0
		p.v=y.v +0
		z=h2r(p);
		ud(swatch,z);
		

	}
	else
	{
		y.v=hs.v+0
		p.v=y.v-0
		z=h2r(p);
		ud(swatch,z);
		
	};
	sample_go();
}
