﻿var _nameOfClass = "searchTextHighlight";

$(document).ready(function() {
    var _searchText = $.query.get('searchText');
    
    if (_searchText != '')
    {
        var _searchParams = new Array();
        if (!(_searchText.indexOf(",") > -1))
        {
            _searchParams[0] = _searchText;
        }
        else
        {
            _searchParams = _searchText.split(",");
        }
        
        for (i = 0; i < _searchParams.length; i++)
        {
            HighlightText(_searchParams[i]);
        }
    }
});

function HighlightText(textToHighlight)
{
    if (textToHighlight != '')
    {
        $(".content_body").each(function() {  
            var _textInContainer = $(this).html();
            var _re = new RegExp(textToHighlight, "i");
            
            var _index = 0;
            var _ready = false;
            
            var _nextIndex;
            var _nextIndexTag;
            var _nextIndexTagEnd;
            var _part1;
            var _part2;
            var _textToReplace;
            
            do
            {
                _nextIndex = _textInContainer.substr(_index).search(_re);
                _nextIndexTag = _textInContainer.substr(_index).search("<");
                
                if (_nextIndexTag != -1 && _nextIndexTag < _nextIndex)
                {
                    _nextIndexTagEnd = _textInContainer.substr(_nextIndexTag + _index).search(">");
                    
                    _index = _index + _nextIndexTag + _nextIndexTagEnd + 1;
                }
                else
                {
                    if (_nextIndex > -1)
                    {
                        _nextIndex = _nextIndex + _index;
                        
                        _part1 = _textInContainer.substr(0, _nextIndex);
                        _part2 = _textInContainer.substr(_nextIndex);
                        
                        if (_part1.substr(_part1.length - 6) != "title=")
                        {
                            _textToReplace = _part2.substr(0, textToHighlight.length);
                            _part2 = _part2.substr(textToHighlight.length);
                            _part2 = "<span class=\"" + _nameOfClass + "\">" + _textToReplace + "</span>" + _part2;
                            
                            _textInContainer = _part1 + _part2;
                        
                            _index = _nextIndex + 22 + _nameOfClass.length + textToHighlight.length;
                        }
                        else
                        {
                            _textInContainer = _part1 + _part2;
                            
                            _index = _nextIndex + textToHighlight.length;
                        }
                    }
                    else
                    {
                        _ready = true;
                    }
                }
            }
            while(_ready == false)
            
            $(this).html(_textInContainer);
        });
    }
}