function $_(elementId)
{
	return document.getElementById(elementId);
}

function ColorPickercontainsDOM (container, containee) {
  var isParent = false;
  do {
    if ((isParent = container == containee))
      break;
    containee = containee.parentNode;
  }
  while (containee != null);
  return isParent;
}

function ColorPickercheckMouseEnter (element, evt) {
  if (element.contains && evt.fromElement) {
    return !element.contains(evt.fromElement);
  }
  else if (evt.relatedTarget) {
    return !ColorPickercontainsDOM(element, evt.relatedTarget);
  }
}

//function checks if mouse pointer has just left element
function ColorPickercheckMouseLeave (element, evt) {
  if (element.contains && evt.toElement) {
    return !element.contains(evt.toElement);
  }
  else if (evt.relatedTarget) {
    return !ColorPickercontainsDOM(element, evt.relatedTarget);
  }
}

function ColorPickerExpanderMouseOver(elementRef,evt,DropDownClientId) 
{
	$_(DropDownClientId+"_ItemsContainer").style.display="block";
} 

function ColorPickerExpanderClick(elementRef,evt,DropDownClientId) 
{
	ColorPickerHideItems(elementRef,evt,DropDownClientId,'N'); 	
}

function ColorPickerHideItems(elementRef,evt,DropDownClientId,CheckMousePointer) 
{
	if (ColorPickercheckMouseLeave($_(DropDownClientId+"_Container"),evt) || CheckMousePointer!="Y")
	{
		$_(DropDownClientId+"_ItemsContainer").style.display="none";	
	}
}

function ColorPickerItemMouseOver(elementRef,evt,DropDownClientId,ItemIndex) 
{
	$_(DropDownClientId+"_"+ItemIndex+"_ListItem").style.borderColor="#CCCCCC";
}

function ColorPickerItemMouseOut(elementRef,evt,DropDownClientId,ItemIndex) 
{
	$_(DropDownClientId+"_"+ItemIndex+"_ListItem").style.borderColor="#2E2E2E";
}

function ColorPickerItemClick(elementRef,evt,DropDownClientId,ItemIndex,CausesPostBack) 
{
	ColorPickerHideItems(elementRef,evt,DropDownClientId,'N'); 
	$_(DropDownClientId).selectedIndex= parseInt(ItemIndex);
	if ($_(DropDownClientId).selectedIndex>0)
		$_(DropDownClientId+"_SelectedListItem").style.background ="#"+$_(DropDownClientId)[$_(DropDownClientId).selectedIndex].text;  
	else
		$_(DropDownClientId+"_SelectedListItem").style.background ="#2E2E2E";
	if (CausesPostBack == "Y")
	{
		__doPostBack('__Page', 'MyCustomArgument');
	}
}