<script type='text/javascript'>
var opened = 0;
var maxtd = 18;
var maxtddiv = -1;
var coloursrgb = new Array('00', '33', '66', '99', 'cc', 'ff');
var coloursgrey = new Array('000000', '333333', '666666', '999999', 'cccccc', 'ffffff');
var colourssol = new Array('ff0000', '00ff00', '0000ff', 'ffff00', '00ffff', 'ff00ff');
var rowswitch = 0;
var rowline = '';
var rows1 = '';
var rows2 = '';
var notr = 0;
var tdblk = '<td style="background-color: #000000; cursor: default; height: 10px; width: 10px;"><\/td>';
var g = 1;
var s = 0;
var i, j, k;
function addtext(tag1,tag2) {
tag1 = tag1 || "";
tag2 = tag2 || "";
var textarea = document.text.text;
textarea.focus();
if (document.selection) {
var sel = document.selection.createRange();
if (sel.text=="") { textarea.value += tag1+tag2; }
else { sel.text = tag1+sel.text+tag2; }
}
else {
var len = textarea.value.length;
var start = textarea.selectionStart;
var end = textarea.selectionEnd;
var scrollTop = textarea.scrollTop;
var scrollLeft = textarea.scrollLeft;
var sel = textarea.value.substring(start,end);
if (sel=="") { textarea.value += tag1+tag2; }
else {
var replace = tag1+sel+tag2;
textarea.value = textarea.value.substring(0,start)+replace+textarea.value.substring(end,len);
textarea.scrollTop = scrollTop;
textarea.scrollLeft = scrollLeft;
}
}
}
function td_render(color) {
return '<td style="background-color: #'+color+'; height: 10px; width: 10px;" onmousedown="opener.addtext(\"[color=#'+color+']\",\"[/color]\");self.close()"></td>';
}
function selector() {
colors = window.open("","Choose a color!","width=750,height=600");
if (opened==0) {
for (i=0; i < coloursrgb.length; i++) {
for (j=0; j < coloursrgb.length; j++) {
for (k=0; k < coloursrgb.length; k++) {
maxtddiv++;
if (maxtddiv % maxtd == 0) {
if (rowswitch) {
if (notr < 5){
rows1 += '</tr><tr>'+td_render(coloursgrey[g])+tdblk;
g++;
}
rowswitch = 0;
notr++;
}else{
rows2 += '</tr><tr>'+td_render(colourssol[s])+tdblk;
s++;
rowswitch = 1;
}
maxtddiv = 0;
}
rowline = td_render(coloursrgb[j]+coloursrgb[k]+coloursrgb[i]);
if (rowswitch) {
rows1 += rowline;
}else{
rows2 += rowline;
}
}
}
}
colors.document.write('<table cellspacing="1" cellpadding="0" style="cursor: pointer;background-color: #000;width:100%;border:0px"><tr>');
colors.document.write(td_render(coloursgrey[0])+tdblk+rows1+rows2);
colors.document.write('</tr></table>');
}
colors.focus();
opened = 1;
}
</script>
<form name="text">
<textarea name="text" rows="40" cols="100"></textarea>
<input type="button" onclick="selector()" value="Colors" />
</form>