//Powered by Iternix Inc. 2005 (c)
//All right reserved
//File owner is Vitaliy Lavrenko aka ZCKernel

vars = new Object()
vars.which="nothing"
var m_x;
var m_y;
var color_z="ff0000";
var drag_on=0;
var figure="";
var hD="0123456789ABCDEF";

function d2h(d)
{
	var h = hD.substr(d&15,1);
	while(d>15) {d>>=4;h=hD.substr(d&15,1)+h;}
	return h;
}
function h2d(h)
{
	return parseInt(h,16);
}

function getOffsetX(element)
{
	var parent=element.offsetParent;
	if(parent)
	{
		return element.offsetLeft + getOffsetX(element.offsetParent);
	}
	else
	{
		return 0;
	}
}
function getOffsetY(element)
{
	var parent=element.offsetParent;
	if(parent)
	{
		return element.offsetTop + getOffsetY(element.offsetParent);
	}
	else
	{
		return 0;
	}
}

var count=0;

vars = new Object()

function chooseone(val,opt1,opt2)
{
	var tempval=document.getElementById(val)
	if(tempval.status)
	return opt1;
	else
	return opt2;
}

function formswitch(which)
{
	/*
	var tempval=document.getElementById('form_advanced')
	tempval.style.display="none"
	tempval="form_"+which
	tempval=document.getElementById(tempval)
	tempval.style.display="inline"
	*/
}



function getAbsoluteX (elm) {
	var x = 0;
	if (elm && typeof elm.offsetParent != "undefined") {
		while (elm && typeof elm.offsetLeft == "number") {
			x += elm.offsetLeft;
			elm = elm.offsetParent;
		}
	}
	return x;
}

function display(what,which)
{
	var tempval=document.getElementById(what)
	if(which==0){
		tempval.style.display="none"
		//		ch_color();
		//		hs_dz(0);
	}
	if(which==1){
		tempval.style.display="block"
		//		hs_dz(1);
	}
	if(which==2)
	{
		if(tempval.style.display=="none"){
			tempval.style.display="block";
			//			hs_dz(1);
		}
		else  {
			//                        hs_dz(0);
			tempval.style.display="none"
			//			ch_color();
		}
	}
}


function getAbsoluteY(elm) {
	var y = 0;
	if (elm && typeof elm.offsetParent != "undefined") {
		while (elm && typeof elm.offsetTop == "number") {
			y += elm.offsetTop;
			elm = elm.offsetParent;
		}
	}
	return y;
}

function hs_dz(v){
	var c1_o=document.getElementById("col_d_z");
	if (v==1){
		c1_o.style.border="1px solid black";
	} else {
		c1_o.style.border="0px solid #fefefe";
	}
}
function showcolors2(x,y,id)
{
	var tempval=document.getElementById("colorchart")
	tempval.style.top=y+document.body.scrollTop
	tempval.style.left=x+document.body.scrollLeft
	tempval.style.display="inline"
	vars.which=id
}

function colorchoose(color,elem)
{
	//	alert(elem);
	var tempval=document.getElementById(vars.which)
	tempval.value=color
	if(elem=="color1")
	{
		var tempval=document.getElementById("div_mask1");
	}
	else if(elem=="color2")
	{
		var tempval=document.getElementById("div_mask2");
	}
	tempval.style.backgroundColor=color;
	var input=document.getElementById(elem);
	input.value=color;
}
function getvalue(what)
{
	var tempval=document.getElementById(what)
	return tempval.value;
}

function chcol_div(value)
{
	alert(value);
	var tempval=document.getElementById("div_mask")
	tempval.style.background=value;
}
var click_obj;
var click_event;

function generate_c_arr()
{
	var color;
	var c_arr=new Array();
	var r,g,b;
	var _r,_g,_b;
	var count=0;
	
	for(r=40;r<=255;r+=30){
		for(g=40;g<=255;g+=30){
			for(b=40;b<=255;b+=30){
				_r=d2h(r);if (_r.length<2) _r="0"+_r;
				_g=d2h(g);if (_g.length<2) _g="0"+_g;
				_b=d2h(b);if (_b.length<2) _b="0"+_b;
				color=_g+""+_r+""+_b;
				c_arr[count]=color;
				count++;
			}
		}
	}
	
	for (i=1;i<9;i++)
	{
		if (i%2==0)
		{
			continue
		}
		else
		{
			ck=63;
			for (t=1;t<9;t++)
			{
				ck=7;
				for (c=(i*64+(t-1)*8);c<(((i*64+(t-1)*8)+7)-3);c++)
				{
					tm=c_arr[c];
					c_arr[c]=c_arr[c+ck];
					c_arr[c+ck]=tm;
					ck-=2;
				}
			}
		}
	}
	
	return c_arr;
}

function generate_c_arr1()
{
	var c_arr1=new Array();
	var color;
	var count=0;
	var _r;
	var r;
	
	for(r=0;r<=255;r+=4)
	{
		_r=d2h(r);
		if(_r.length<2)
			_r="0"+_r;
		color=_r+""+_r+""+_r;
		
		c_arr1[count]=color;
		count++;
	}
	return c_arr1;
}

function color_pick(elem){
	//Algorithm by ZCKernel
	var color="";
	var count=0;
	var c_arr=generate_c_arr();
	var c_arr1=generate_c_arr1();
	var max=8;
	var max1=64;
	var max2=4;
	var m_count1=0;
	var m_count2=0;
	var m_count3=0;
	
	var s_text="<table id=\""+elem+"_colorchart\" border=0 cellpadding=0 cellspacing=0 onClick=\"display(this.id,0)\" style=\"display:none\" border=0 width=100% height=100%><tr><td>";
	
	s_text+="<table border=0 cellpadding=0 cellspacing=0><tr>";
	for (var i=0;i<c_arr1.length;i++)
	{
		if (i==32)
			s_text+="</tr><tr>";
		s_text+="<td bgColor="+c_arr1[i]+" width=7 height=7 title="+c_arr1[i]+" onMouseOver=\"colorchoose('"+c_arr1[i]+"','"+elem+"')\"></td>";
	}
	s_text+="</tr></table>";
	s_text+="<table border=0 cellpadding=0 cellspacing=0><tr>";
	for (var i=0;i<c_arr.length;i++)
	{
		if (m_count2==0)
			s_text+="<td><table border=0 cellpadding=0 cellspacing=0><tr>";
		s_text+="<td bgColor="+c_arr[i]+" width=7 height=7 title="+c_arr[i]+" onMouseOver=\"colorchoose('"+c_arr[i]+"','"+elem+"')\"></td>";
		m_count1++;
		m_count2++;
		if (m_count2==max1)
		{
			m_count2=0;
			if (m_count1==max)
			{
				s_text+="</tr>";
				m_count1=0;
			}
			s_text+="</table></td>";
			m_count3++;
			if (m_count3==max2)
				s_text+="</tr></table><table border=0 cellpadding=0 cellspacing=0><tr>";
				
		}
		else
		{
			if (m_count1==max)
			{
				s_text+="</tr><tr>";
				m_count1=0;
			}
		}
	}
	s_text+="</tr></table></td></tr></table>";
	document.write(s_text)
}

function showcolors(button_id,input_id)
{
	var tableElm = document.getElementById(button_id);
	var x = getAbsoluteX(tableElm);
	var y = getAbsoluteY(tableElm);

	var menuElm = document.getElementById(input_id + "_colorchart");
	menuElm.style.left = x + "px";
	menuElm.style.top = y + "px";
	vars.which=input_id

	var tempval=menuElm;
	if (tempval.style.display=="block")
	{
		tempval.style.display="none";
		//var tempval=document.getElementById("div_mask1");
		//tempval.style.backgroundColor=color_z;
		//return;
	}
	else
	{
		tempval.style.display="block"
	}
	//	hs_dz(1);
}

