var colPerLine = 15;
var colorLevels = Array('0','3','6','9','C','F','4');
var colorArray = Array();
var tableCode = '';


function colorAdd(red, green, blue)
	{
		var newRed = colorLevels[red];	
		var newGreen = colorLevels[green];		
		var newBlue = colorLevels[blue];		
		addColorArray(newRed,newGreen,newBlue);
	}

function addColorArray( red, green, blue )
	{
		colorArray[colorArray.length] = '#' + red + red + green + green + blue + blue; 
	}
	
function generateColors()
	{
		for (count = 0;count < colorLevels.length-1; count++ )	
			{
				for (count1 = 0; count1 < colorLevels.length-1; count1++)
					{
						colorAdd(count,count1,count);
					}
			}

		for (count = 0;count < colorLevels.length-1; count++ )	
			{
				for (count1 = 0; count1 < colorLevels.length-1; count1++)
					{
						colorAdd(count,count1,count1);
					}
			}

		for (count = 0;count < colorLevels.length-1; count++ )	
			{
				for (count1 = 0; count1 < colorLevels.length-1; count1++)
					{
						colorAdd(count1,count1,count);
					}
			}
		for (count = 0;count < colorLevels.length-1; count++ )	
			{
				for (count1 = 0; count1 < colorLevels.length-1; count1++)
					{
						colorAdd(count1,count,count);
					}
			}

			
		return colorArray;
	}

function setColor(color,div)
	{	
		$(div).setStyle({background: color});
		$(div+'Value').value = color;
	}
function getColorTable(div) 
	{
	   var colors = colorArray;
		 if( colors.length > 0 )
		 	{
				if (tableCode == '')
					{
				    tableCode += '<table border="0" cellspacing="1" cellpadding="1">';
				    for (i = 0; i < colors.length; i++) {
				         if (i % colPerLine == 0) { tableCode += '<tr>'; }
			              tableCode += '<td bgcolor="' + colors[i] + '" style="width: 15px;height: 15px;"><a style="display: block;outline: 1px solid #000000; color: ' 
			              	  + colors[i] + '; background: ' + colors[i] + ';font-size: 10px;" title="' 
			              	  + colors[i] + '" href="javascript:setColor(\'' + colors[i] + '\',\'' + div +'\');">&nbsp;</a></td>';
				         if (i % colPerLine == colPerLine - 1) { tableCode += '</tr>'; }
				    }
				    if (i % colPerLine != 0) { tableCode += '</tr>'; }
						tableCode +='<tr>';
						tableCode +='<td style="height: 7px;font-size: 1px;" colspan="' + colPerLine + '">';
						tableCode +='&nbsp;';
						tableCode +='</td>';
						tableCode +='</tr>';
						tableCode +='<tr>';
						tableCode +='<td style="color: red" colspan="' + colPerLine + '">';
						tableCode +='Please Select a Color';
						tableCode +='</td>';
						tableCode +='</tr>';
				    tableCode += '</table>';
						return tableCode;
					}	
					else
						{
						 	 return tableCode;
						}
		 	}
		else
				{	
				 generateColors();
				 tableCode = '';
		    tableCode += '<table border="0" cellspacing="1" cellpadding="1">';
		    for (i = 0; i < colors.length; i++) {
		         if (i % colPerLine == 0) { tableCode += '<tr>'; }
	              tableCode += '<td bgcolor="' + colors[i] + '" style="width: 15px;height: 15px;"><a style="display: block;text-decoration: none;outline: 1px solid #000000;  background: ' 
										+ colors[i] + ';font-size: 10px;" title="' 
	              	  + colors[i] + '" href="javascript: void(0);"onclick="javascript:setColor(\'' + colors[i] + '\',\'' + div +'\');">&nbsp;</a></td>';
		         if (i % colPerLine == colPerLine - 1) { tableCode += '</tr>'; }
		    }
		    if (i % colPerLine != 0) { tableCode += '</tr>'; }
				tableCode +='<tr>';
				tableCode +='<td style="height: 7px;font-size: 1px;" colspan="' + colPerLine + '">';
				tableCode +='&nbsp;';
				tableCode +='</td>';
				tableCode +='</tr>';
				tableCode +='<tr>';
				tableCode +='<td style="color: red" colspan="' + colPerLine + '">';
				tableCode +='Please Select a Color';
				tableCode +='</td>';
				tableCode +='</tr>';
		    tableCode += '</table>';
				return tableCode;
				}
	}
	
	
function getDiv(div)
	{
	
		colorArray = Array();

		$('colorPickerDiv').update(getColorTable(div));
		
		var error = 310;
		if ( div == 'linkDiv' )
			{
				error = $(div).cumulativeOffset()[1];	
			}
//		alert(error + div);
		Modalbox.show(
										$('colorPickerDiv'),
										{
											overrideAlert: true,
											title: 'Color Editor',
											width: 285, 
											height: 250,
											defaultLeft: $(div).cumulativeOffset()[0]+30,  
											defaultTop: error,
										afterHide: function()
											{
												$('colorPickerDiv').innerHTML = '';
											}
										}
				);
	}