function doHighlight(bodyText, searchTerm, highlightStartTag, highlightEndTag)
{
// the highlightStartTag and highlightEndTag parameters are optional
if ((!highlightStartTag) || (!highlightEndTag)) {
highlightStartTag = "";
highlightEndTag = "";
}
st=searchTerm.split("_")
searchTerm=st[1]
// find all occurences of the search term in the given text,
// and add some "highlight" tags to them (we're not using a
// regular expression search, because we want to filter out
// matches that occur within HTML tags and script blocks, so
// we have to do a little extra validation)
var newText = "";
var i = -1;
var lcSearchTerm = searchTerm.toLowerCase();
lcSearchTerm = lcSearchTerm.replace(/[èéêë]/ig, 'e');
lcSearchTerm = lcSearchTerm.replace(/[àâäá]/ig, "a");
lcSearchTerm = lcSearchTerm.replace(/[îïíì]/ig, "i");
lcSearchTerm = lcSearchTerm.replace(/[ôöóò]/ig, "o");
lcSearchTerm = lcSearchTerm.replace(/[ùûüú]/ig, "u");
lcSearchTerm = lcSearchTerm.replace(/[,]/ig, "");
var lcBodyText = bodyText.toLowerCase();
lcBodyText = lcBodyText.replace(/[èéêë]/ig, 'e');
lcBodyText = lcBodyText.replace(/[àâäá]/ig, "a");
lcBodyText = lcBodyText.replace(/[îïíì]/ig, "i");
lcBodyText = lcBodyText.replace(/[ôöóò]/ig, "o");
lcBodyText = lcBodyText.replace(/[ùûüú]/ig, "u");
while (bodyText.length > 0) {
i = lcBodyText.indexOf(lcSearchTerm, i+1);
if (i < 0) {
newText += bodyText;
bodyText = "";
} else {
// skip anything inside an HTML tag
if (bodyText.lastIndexOf(">", i) >= bodyText.lastIndexOf("<", i)) {
// skip anything inside a