﻿var initialIndex = 0;

/*
 *  nalezeni nasledujiciho oznaceneho textu <span class='markWordYellow'>
 */
function FindNextMarkedWord(container)
{
    var o = document.getElementById(container);
    var bFind = false;
    var oDiv = document.all['docContentPanel'];
    //var iDivHeight = oDiv.clientHeight;
    var iScrollTopOld = oDiv.scrollTop;
    
    for (var i=initialIndex; i<o.children[0].children.length; i++)
    {
        var c = o.children[0].children[i];
        if (c.tagName.toLowerCase() == 'span' && c.className == 'markWordYellow')
        {
            c.scrollIntoView();
            initialIndex = ++i;

            var iScrollTop = oDiv.scrollTop;
            // musime byt na jinem radku
            if (iScrollTop != iScrollTopOld)
            {
                bFind = true;
                break;
            }
        }
    }
    //window.status='initialIndex=' + initialIndex + ' return=' + ((bFind == false) ? 'true' : 'false');
    
    // vraci zda provest postback -> zavola presun an nasledujici zaznam
    return (bFind == false)
}

/*
 *  nalezeni predchoziho oznaceneho textu <span class='markWordYellow'>
 */
function FindPrevMarkedWord(container, bSearchFromEnd)
{
    var o = document.getElementById(container);
    var bFind = false;
    var oDiv = document.all['docContentPanel'];
    //var iDivHeight = oDiv.clientHeight;
    var iScrollTopOld = oDiv.scrollTop;
    
    // pokud hledame od konce
    if (bSearchFromEnd == true)
        initialIndex = o.children[0].children.length + 1;
    
    for (var i=initialIndex - 2; i>=0; i--)
    {
        var c = o.children[0].children[i];
        if (c.tagName.toLowerCase() == 'span' && c.className == 'markWordYellow')
        {
            c.scrollIntoView();
            initialIndex = i + 1;
            
            var iScrollTop = oDiv.scrollTop;
            // musime byt na jinem radku
            if (iScrollTop != iScrollTopOld)
            {
                bFind = true;
                break;
            }
        }
    }
    //window.status='initialIndex=' + initialIndex + ' return=' + ((bFind == false) ? 'true' : 'false');
    return (bFind == false)
}
