//************************
//     	ColorPicker		//
//************************



var verlauf = 'none',bgverlauf = 'none';
var s_align = 'left';
var textv = 'none';

function $S(o) { o=$(o); if(o) return(o.style); }
function $(v,o) { return((typeof(o)=='object'?o:document).getElementById(v)); }

function b64e(input)
{	
	var output = "";
	var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
	var i = 0;

	var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";

	while (i < input.length) {
 
		chr1 = input.charCodeAt(i++);
		chr2 = input.charCodeAt(i++);
		chr3 = input.charCodeAt(i++);
 
		enc1 = chr1 >> 2;
		enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
		enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
		enc4 = chr3 & 63;
 
		if (isNaN(chr2)) {
			enc3 = enc4 = 64;
		} else if (isNaN(chr3)) {
			enc4 = 64;
		}
 
		output = output +
		keyStr.charAt(enc1) + keyStr.charAt(enc2) +
		keyStr.charAt(enc3) + keyStr.charAt(enc4);
 
	}
 	return output;
}
function b64d(input)
{
	var output = "";
	var chr1, chr2, chr3;
	var enc1, enc2, enc3, enc4;
	var i = 0;
	var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
 
	input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
 
	while (i < input.length) 
	{
	 	enc1 = keyStr.indexOf(input.charAt(i++));
		enc2 = keyStr.indexOf(input.charAt(i++));
		enc3 = keyStr.indexOf(input.charAt(i++));
		enc4 = keyStr.indexOf(input.charAt(i++));
 
		chr1 = (enc1 << 2) | (enc2 >> 4);
		chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
		chr3 = ((enc3 & 3) << 6) | enc4;
 
		output = output + String.fromCharCode(chr1);
 		if (enc3 != 64) {
			output = output + String.fromCharCode(chr2);
		}
		if (enc4 != 64) {
			output = output + String.fromCharCode(chr3);
		}

	}
 
	//output = Base64._utf8_decode(output);

	return output;
}


function vrevert()
{
	if($('revert').checked == true)
	{
		$('textvimg').src = 'template/1/images/' + textv + '2.gif';	
	}
	else
	{
		$('textvimg').src = 'template/1/images/' + textv + '.gif';	
	}
}
function resetformelements()
{
	$('dfxcolcount').options.selectedIndex = 0;
	$('bgcolcount').options.selectedIndex = 0;
	$('radio1').checked = true;
	$('radio2').checked = true;
	$('radio3').checked = true;
	$('modecheck').checked = false;
	$('bgmodecheck').checked = false;
	$('size1').options.selectedIndex = 0;
	$('size2').options.selectedIndex = 31;
	$('geninput').value = '';
	$('genoutput').value = '';
}	

function toggletextv(al)
{
	settingvv = textv;
	if(al == settingvv)
	{
	
	}
	else
	{
		if($('revert').checked == true)
		{
			$('textvimg').src = 'template/1/images/' + al + '2.gif';	
		}
		else
		{
			$('textvimg').src = 'template/1/images/' + al + '.gif';	
		}
		textv = al;
	}
}

function togglesetting(setting)
{
	settingv = $('s_' + setting).value;
	if(settingv == 'n')
	{
		$('s_' + setting).value = 'c';
		settingv = 'c';
	}
	else
	{
		$('s_' + setting).value = 'n';
		settingv = 'n';
	}
	$(setting + '_').src = 'template/1/images/' + setting + '_' + settingv + '.gif';
}

function togglealign(al)
{
	settingvv = s_align;
	if(al == settingvv)
	{
	
	}
	else
	{
		$(settingvv + '_').src = 'template/1/images/' + settingvv + '_n.gif';
		$(al + '_').src = 'template/1/images/' + al + '_c.gif';
		s_align = al;
	}
}

function updatev()
{
	num = $('dfxcolcount').options[$('dfxcolcount').options.selectedIndex].value;
	
	getstr = new Array();
	
	for(var i=0; i<num; i++)
	{
		getstr[i] = 'col' + i + '=' + $('col' + i + 'h').value;
	}
	
	getstr = getstr.join('&');
	
	if($('modecheck').checked == true)
	{
		mode = 1;
	}
	else
	{
		mode = 0;
	}
	
	$('v1').src = 'template/1/inc/verlauf.php?' + getstr + '&c=' + num + '&mode=' + mode + '&type=' + verlauf;
	
	// BG
	
	num = $('bgcolcount').options[$('bgcolcount').options.selectedIndex].value;
	
	getstr = new Array();
	
	for(var i=0; i<num; i++)
	{
		getstr[i] = 'col' + i + '=' + $('bgcol' + i + 'h').value;
	}
	
	getstr = getstr.join('&');
	
	if($('bgmodecheck').checked == true)
	{
		mode = 1;
	}
	else
	{
		mode = 0;
	}
	
	$('v2').src = 'template/1/inc/verlauf.php?' + getstr + '&c=' + num + '&mode=' + mode + '&type=' + bgverlauf;
}

function toggleverlauf(radio)
{
	verlauf = radio.value;
	updatev();
}
function togglebgverlauf(radio)
{
	bgverlauf = radio.value;
	updatev();
}

function colchange()
{
	num = $('dfxcolcount').options[$('dfxcolcount').options.selectedIndex].value;
	for(var i=0; i<5; i++)
	{
		if(i < num)
		{
			$S('col' + i).visibility = 'visible';
		}
		else
		{
			$S('col' + i).visibility = 'hidden';
		}
	}
	getstr = new Array();
	
	for(var i=0; i<num; i++)
	{
		getstr[i] = 'col' + i + '=' + $('col' + i + 'h').value;
	}
	
	getstr = getstr.join('&');
	
	if($('modecheck').checked == true)
	{
		mode = 1;
	}
	else
	{
		mode = 0;
	}
	
	$('v1').src = 'template/1/inc/verlauf.php?' + getstr + '&c=' + num + '&mode=' + mode + '&type=' + verlauf;
}

function bgcolchange()
{
	num = $('bgcolcount').options[$('bgcolcount').options.selectedIndex].value;
	for(var i=0; i<5; i++)
	{
		if(i < num)
		{
			$S('bgcol' + i).visibility = 'visible';
		}
		else
		{
			$S('bgcol' + i).visibility = 'hidden';
		}
	}
	getstr = new Array();
	
	for(var i=0; i<num; i++)
	{
		getstr[i] = 'col' + i + '=' + $('bgcol' + i + 'h').value;
	}
	
	getstr = getstr.join('&');
	
	if($('bgmodecheck').checked == true)
	{
		mode = 1;
	}
	else
	{
		mode = 0;
	}
	
	$('v2').src = 'template/1/inc/verlauf.php?' + getstr + '&c=' + num + '&mode=' + mode + '&type=' + bgverlauf;
}

function getScrollY()
{
	var scrOfX = 0,scrOfY=0;
	if(typeof(window.pageYOffset)=='number')
	{
		scrOfY=window.pageYOffset;scrOfX=window.pageXOffset;
	}
	else if(document.body&&(document.body.scrollLeft||document.body.scrollTop))
	{
		scrOfY=document.body.scrollTop;scrOfX=document.body.scrollLeft;
	}
	else if(document.documentElement&&(document.documentElement.scrollLeft||document.documentElement.scrollTop))
	{
		scrOfY=document.documentElement.scrollTop;
		scrOfX=document.documentElement.scrollLeft;
	}
	return scrOfY;
}
document.write("<style>.colorpicker301{text-align:center;visibility:hidden;display:none;position:absolute;background-color:#FFF;border:solid 1px #CCC;padding:4px;z-index:999;}.o5582brd{border-bottom:solid 1px #DFDFDF;border-right:solid 1px #DFDFDF;padding:0;width:12px;height:14px;}a.o5582n66,.o5582n66,.o5582n66a{font-family:arial,tahoma,sans-serif;text-decoration:underline;font-size:9px;color:#666;border:none;}.o5582n66,.o5582n66a{text-align:center;text-decoration:none;}a:hover.o5582n66{text-decoration:none;color:#FFA500;cursor:pointer;}.a01p3{padding:1px 4px 1px 2px;background:whitesmoke;border:solid 1px #DFDFDF;}</style>");
function gett6op6()
{
	csBrHt=0;
	if(typeof(window.innerWidth)=='number')
	{
		csBrHt=window.innerHeight;
	}
	else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight))
	{
		csBrHt=document.documentElement.clientHeight;
	}
	else if(document.body&&(document.body.clientWidth||document.body.clientHeight))
	{
		csBrHt=document.body.clientHeight;
	}
	ctop=((csBrHt/2)-132)+getScrollY();
	return ctop;
}
function getLeft6()
{
	var csBrWt=0;
	if(typeof(window.innerWidth)=='number')
	{
		csBrWt=window.innerWidth;
	}
	else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight))
	{
		csBrWt=document.documentElement.clientWidth;
	}
	else if(document.body&&(document.body.clientWidth||document.body.clientHeight))
	{
		csBrWt=document.body.clientWidth;
	}
	cleft=(csBrWt/2)-125;
	return cleft;
}
var nocol1="&#78;&#79;&#32;&#67;&#79;&#76;&#79;&#82;",clos1="> CLOSE <",tt6="&#70;&#82;&#69;&#69;&#45;&#67;&#79;&#76;&#79;&#82;&#45;&#80;&#73;&#67;&#75;&#69;&#82;&#46;&#67;&#79;&#77;",hm6="&#104;&#116;&#116;&#112;&#58;&#47;&#47;&#119;&#119;&#119;&#46;";
hm6+=tt6;
tt6="&#80;&#79;&#87;&#69;&#82;&#69;&#68;&#32;&#98;&#121;&#32;&#70;&#67;&#80;";
function setCCbldID6(objID,val)
{
	document.getElementById(objID).value=val;
}
function setCCbldSty6(objID,prop,val)
{
	switch(prop)
	{
		case "bc":
			if(objID!='none')
			{
				document.getElementById(objID).style.backgroundColor= '#' + val;
			}
			break;
		case "vs":
			document.getElementById(objID).style.visibility=val;
			break;
		case "ds":
			document.getElementById(objID).style.display=val;
			break;
		case "tp":
			document.getElementById(objID).style.top=val;
			break;
		case "lf":
			document.getElementById(objID).style.left=val;
			break;
	}
}
function putOBJxColor6(OBjElem,Samp,pigMent)
{
	if(pigMent!='x')
	{
		setCCbldID6(OBjElem,pigMent);
		setCCbldSty6(Samp,'bc',pigMent);
	}
	setCCbldSty6('colorpicker301','vs','hidden');
	setCCbldSty6('colorpicker301','ds','none');
	if(Samp == 'col1' && verlauf == 'none')
	{
		verlauf = 'linear';
		$('line1').checked = true;
	}
	if(Samp == 'bgcol1' && bgverlauf == 'none')
	{
		bgverlauf = 'linear';
		$('line2').checked = true;
	}
	updatev();
}

function putrandcolor(OBjElem,Samp)
{
	var objX=new Array('00','33','66','99','CC','FF');
	randr = Math.round(6*(Math.random()));
	randg = Math.round(6*(Math.random()));
	randb = Math.round(6*(Math.random()));
	rr = objX[randr];
	gg = objX[randg];
	bb = objX[randb];
	colorcode = rr + gg + bb;
	putOBJxColor6(OBjElem,Samp,colorcode);
}

function showColorGrid3(OBjElem,Sam)
{
	$S('colorpicker301').left = $(Sam + 'i').offsetLeft + 20 + "px";
	$S('colorpicker301').visibility = 'visible';
	var objX=new Array('00','33','66','99','CC','FF');
	var c=0;
	var z='"'+OBjElem+'","'+Sam+'",""';
	var xl='"'+OBjElem+'","'+Sam+'","x"';
	var mid='';
	var zufallt = '> ZUFALL <'
	mid+='<center><table bgcolor="#FFFFFF" border="0" cellpadding="0" cellspacing="0" style="border:solid 1px #F0F0F0;padding:2px;">';
	mid+="<tr><td colspan='18' align='center' style='margin:0;padding:2px;height:14px;' ><input class='o5582n66' type='text' size='10' id='o5582n66' value='#FFFFFF'><input class='o5582n66a' type='text' size='2' style='width:14px;' id='o5582n66a' onclick='javascript:alert(\"click on selected swatch below...\");' value='' style='border:solid 1px #666;'>&nbsp;&nbsp;<a class='o5582n66' href='javascript:onclick=putrandcolor(\""+OBjElem+"\",\""+Sam+"\")'><span class='a01p3'>"+zufallt+"</span></a>&nbsp;&nbsp;<a class='o5582n66' href='javascript:onclick=putOBJxColor6("+xl+")'><span class='a01p3'>"+clos1+"</span></a></td></tr><tr>";
	var br=1;
	for(o=0;o<6;o++)
	{
		mid+='</tr><tr>';
		for(y=0;y<6;y++)
		{
			if(y==3)
			{
				mid+='</tr><tr>';
			}
			for(x=0;x<6;x++)
			{
				var grid='';
				grid=objX[o]+objX[y]+objX[x];
				var b="'"+OBjElem+"', '"+Sam+"','"+grid+"'"; // ,'#"+grid+"'";
				mid+='<td class="o5582brd" style="background-color:#'+grid+'"><a class="o5582n66"  href="javascript:onclick=putOBJxColor6('+b+');" onmouseover=javascript:document.getElementById("o5582n66").value="#'+grid+'";javascript:document.getElementById("o5582n66a").style.backgroundColor="#'+grid+'";  title="#'+grid+'"><div style="width:12px;height:14px;"></div></a></td>';
				c++;
			}
		}
	}
	mid+='</tr></table>';
	var objX=new Array('0','3','6','9','C','F');
	var c=0;
	var z='"'+OBjElem+'","'+Sam+'",""';
	var xl='"'+OBjElem+'","'+Sam+'","x"';mid+='<table bgcolor="#FFFFFF" border="0" cellpadding="0" cellspacing="0" style="border:solid 1px #F0F0F0;padding:1px;"><tr>';
	var br=0;
	for(y=0;y<6;y++)
	{
		for(x=0;x<6;x++)
		{
			if(br==18)
			{
				br=0;
				mid+='</tr><tr>';
			}
			br++;
			var grid='';
			grid=objX[y]+objX[x]+objX[y]+objX[x]+objX[y]+objX[x];
			var b="'"+OBjElem+"', '"+Sam+"','"+grid+"'"; // ,'#"+grid+"'";
			mid+='<td class="o5582brd" style="background-color:#'+grid+'"><a class="o5582n66"  href="javascript:onclick=putOBJxColor6('+b+');" onmouseover=javascript:document.getElementById("o5582n66").value="#'+grid+'";javascript:document.getElementById("o5582n66a").style.backgroundColor="#'+grid+'";  title="#'+grid+'"><div style="width:12px;height:14px;"></div></a></td>';
			c++;
		}
	}
	mid+="</tr><tr><td colspan='18' align='right' style='padding:2px;border:solid 1px #FFF;background:#FFF;'></td>";
	mid+='</tr></table></center>';
	setCCbldSty6('colorpicker301','tp','100px');
	document.getElementById('colorpicker301').style.top=gett6op6();
	document.getElementById('colorpicker301').style.left=getLeft6();
	setCCbldSty6('colorpicker301','vs','visible');
	setCCbldSty6('colorpicker301','ds','block');
	document.getElementById('colorpicker301').innerHTML=mid;
	$S('colorpicker301').top = $(Sam + 'i').offsetTop + 10 + "px";
}
