function replaceMe(str, phrase, chg) 
{
  var pattern = new RegExp (phrase ,'ig');
  return str.replace( pattern, chg);
}

function getElementsByClass(node,searchClass,tag) 
{
   var classElements = new Array();
   var els = node.getElementsByTagName(tag); // use "*" for all elements
   var elsLen = els.length;
   var pattern = new RegExp("\\b"+searchClass+"\\b");
   for (i = 0, j = 0; i < elsLen; i++) 
   {
     if ( pattern.test(els[i].className) ) 
	 {
       classElements[j] = els[i];
       j++;
     }
   }
   return classElements;
}

function getLayerHtml(id)
{
	var inHtml = new String('');
	if (document.getElementById)
	{
		//x = document.getElementById(id);
		inHtml = id.innerHTML;
	}
	else
	 if (document.all)
	{
		//x = document.all[id];
		inHtml = id.innerHTML;
	}
	return inHtml;
}

function setLayerHtml(text,id)
{
	if (document.getElementById)
	{
		elemObj = id;
		elemObj.innerHTML = text;
	}
	else if (document.all)
	{
		elemObj = id;
		elemObj.innerHTML = text;
	}

}

function markText(txtKeyword, inputHtml, myColor) 
{
   var re; 						
   var varMatches; 					
   var outHtml; 					
   var replaceText;
	 var new_font= new String();
	 new_font='"' + "\\u" + font +'"';


   replaceText = '<span style="color:' + myColor + ';font-weight:bold;">'+eval(new_font)+'</span>';

   re=new RegExp("(\<[^>][^<]*\>)([^<]*)","g");
   outHtml=new String('');				

   while ((varMatches = re.exec(inputHtml)) != null)			   
   {
	 outHtml+=varMatches[1]; 	
	 outHtml+=replaceMe(varMatches[2], txtKeyword, replaceText); 
   }
   return outHtml;
}


function main()
{

    var classElements = new Array();
	var hiliteUrl = new String('hilite');
	var letter = new String('');
    var inHtml;
	var outHtml;

	var hiliteText;
	kromoTable = new Array();
    kromoTable = {"a":"#FFD600", "b":"#008FD4", "c":"#F0C1DA", "d":"#DCDDDE", "e":"#F68B1F", "f":"#FDCC99", "g":"#BB418C", "h":"#FBF49C", "i":"#00FF00", "j":"#F69799", "k":"#772778", "l":"#FF0000", "m":"#69617C", "n":"#CC9966", "o":"#999999", "p":"#D1E8C5", "q":"#A32B21", "r":"#E270AB", "s":"#8FBEE6", "t":"#2C2E8C", "u":"#FFF200", "v":"#0000FF", "w":"#0F7139", "x":"#996666", "y":"#F16668", "z":"#CCCC66"};
	
	classElements = getElementsByClass(document, 'post', 'td');

    for (var i = 0; i < classElements.length; i++ )
	{
	inHtml = '<em></em>'+classElements[i].innerHTML;
    outHtml = inHtml;
       
	   for ( letter in kromoTable )
	   {
    	  outHtml = markText(letter, outHtml, kromoTable[letter]);
	   }
       classElements[i].innerHTML = outHtml;
    }
	return;
}

function replaceFont(new_font)
{
	newer_font='"' + "\\u" + new_font +'"';
	older_font='"' + "\\u" + font +'"';
	font = new_font;
	
	classElements = getElementsByClass(document, 'post', 'td');
	//var re=new RegExp(eval(older_font),"g");
	
	for (var i = 0; i < classElements.length; i++ )
	{
	  inHtml = '<em></em>'+classElements[i].innerHTML;
    outHtml=new String('');
		outHtml+=replaceMe(inHtml, eval(older_font), eval(newer_font));   
    classElements[i].innerHTML = outHtml;
  }
}
	
