// Copyright 2006 Mihai Parparita. All Rights Reserved.

// ==UserScript==
// @name          Gmail Label Colors
// @namespace     http://persistent.info/greasemonkey
// @description	  Optionally colors label names (when they have a #color suffix)
// @injectframes  1
// @include       http://mail.google.com/*
// @include       https://mail.google.com/*
// ==/UserScript==


var renderLabel = function(){

	if (!document.getElementById("tbd")) return;

	var table = document.getElementById('tb');
	if(!table) return;

	var tbody = table.childNodes[1];
	if(!tbody) return;

	var count = tbody.childNodes.length;

	for(var i=0; i<count; i++){
		var tr = tbody.childNodes[i];
		if(!tr) return;
		var td = tr.childNodes[4];			//label section
		if(!td) return;
		var textnode;
		var black = false;
		var node = td.childNodes[1];
		if(node.tagName.toLowerCase() == 'b'){
			textnode = node.childNodes[0];
			black = true;
		} else {
			textnode = td.childNodes[0];
		}

		var val = textnode.nodeValue;
		if (val.indexOf(" #") != -1) {
			var split = val.split(" #");
			if(split.length == 2){
				var sp = document.createElement('span');
				sp.style.color = split[1].replace(/(^\s*)|(\s*$)/g, "");
				var s = split[0];
				if(black)
					s = '<b>' + s + '</b>';
				sp.innerHTML = s;
				textnode.parentNode.replaceChild(sp, textnode);
			}
		}
	}
}
renderLabel();



