var perline = 14; var divSet = false; var curId; var colorLevels = Array('0', '2', '3', 'A', '6', 'D', 'F' , '5', 'B', 'C', '8', 'E', '9'); var colorArray = Array(); var ie = false; var nocolor = 'none'; if (document.all) { ie = true; nocolor = ''; } function getObj(id) { return document.getElementById(id); } function addColor(r, g, b) { var red = colorLevels[r]; var green = colorLevels[g]; var blue = colorLevels[b]; addColorValue(red, green, blue); } function addColorValue(r, g, b) { colorArray[colorArray.length] = '' + r + r + g + g + b + b; } function setColor(color) { var link = getObj(curId); var field = getObj(curId); var picker = getObj('colorpicker'); field.value = color; if (color == '') { link.style.background = nocolor; link.style.color = nocolor; color = nocolor; } else { link.style.background = color; link.style.color = color; } picker.style.display = 'none'; eval(getObj(curId).title); //Now reset hidden form field for phpregister_color_pick document.getElementById('phpregister_color_pick').value=color; //var displayqq=document.getElementById('phpregister_color_pick').value; //alert(displayqq); } function setDiv() { if (!document.createElement) { return; } var elemDiv = document.createElement('div'); if (typeof(elemDiv.innerHTML) != 'string') { return; } genColors(); elemDiv.id = 'colorpicker'; elemDiv.style.position = 'absolute'; elemDiv.style.display = 'none'; elemDiv.style.border = '#000000 1px solid'; elemDiv.style.background = '#829EB4'; elemDiv.innerHTML = 'Pick a User color: ' + '(No color)
' + getColorTable() + curId document.body.appendChild(elemDiv); divSet = true; } function pickColor(id) { curId = id; if (!divSet) { setDiv(); } var picker = getObj('colorpicker'); if (id == curId && picker.style.display == 'block') { picker.style.display = 'none'; return; } var thelink = getObj(id); picker.style.top = getAbsoluteOffsetTop(thelink) + 20; picker.style.left = getAbsoluteOffsetLeft(thelink); picker.style.display = 'block'; } function genColors() { addColorValue('0','0','0'); addColorValue('2','2','2'); addColorValue('3','3','3'); addColorValue('6','6','6'); addColorValue('8','8','8'); addColorValue('9','9','9'); addColorValue('B','B','B'); addColorValue('F','F','F'); addColorValue('C','C','C'); addColorValue('E','E','E'); addColorValue('A','A','A'); addColorValue('D','D','D'); addColorValue('F','F','F'); addColorValue('5','5','5'); addColorValue('D','D','D'); addColorValue('2','2','2'); for (a = 1; a < colorLevels.length; a++) addColor(0,0,a); for (a = 1; a < colorLevels.length - 1; a++) addColor(a,a,5); for (a = 1; a < colorLevels.length; a++) addColor(0,a,0); for (a = 1; a < colorLevels.length - 1; a++) addColor(a,5,a); for (a = 1; a < colorLevels.length; a++) addColor(a,0,0); for (a = 1; a < colorLevels.length - 1; a++) addColor(5,a,a); for (a = 1; a < colorLevels.length; a++) addColor(a,a,0); for (a = 1; a < colorLevels.length - 1; a++) addColor(5,5,a); for (a = 1; a < colorLevels.length; a++) addColor(0,a,a); for (a = 1; a < colorLevels.length - 1; a++) addColor(a,5,5); for (a = 1; a < colorLevels.length; a++) addColor(a,0,a); for (a = 1; a < colorLevels.length - 1; a++) addColor(5,a,5); return colorArray; } function getColorTable() { var colors = colorArray; var tableCode = ''; tableCode += ''; for (i = 0; i < colors.length; i++) { if (i % perline == 0) { tableCode += ''; } tableCode += ''; if (i % perline == perline - 1) { tableCode += ''; } } if (i % perline != 0) { tableCode += ''; } tableCode += '
   
'; return tableCode; } function relateColor(id, color) { var link = getObj(id); if (color == '') { link.style.background = nocolor; link.style.color = nocolor; color = nocolor; } else { link.style.background = color; link.style.color = color; } eval(getObj(id + 'field').title); } function getAbsoluteOffsetTop(obj) { var top = obj.offsetTop; var parent = obj.offsetParent; while (parent != document.body) { top += parent.offsetTop; parent = parent.offsetParent; } return top; } function getAbsoluteOffsetLeft(obj) { var left = obj.offsetLeft; var parent = obj.offsetParent; while (parent != document.body) { left += parent.offsetLeft; parent = parent.offsetParent; } return left; }