function logoCentering()
{
    /*

        funkce pro vertikalni vycentrovani obrazku s logem v html konstrukci:

      <h2 id="logo"><a href="./" class="image"><img src="" alt="" /></a></h2>
      
      nebo
      
      <h2 id="logo"><span class="image"><img src="" alt="" /></span></h2>

        CSS soubor: #header h2#logo .image { height: 128px; ... }  -> vyska pro obrazek je 128px
        v Safari 3.0.3 pro Win elLogo.offsetHeight vracel namisto 128px vysku obrazku -> proto je do
        vypoctu offsetu "natvrdo" pouzita vyska 128px

     */

    // nalezeni elementu h2#logo
    var elLogo = document.getElementById("logo");
    // prochazeni potomku h2#logo
    for ( i = 0; i < elLogo.childNodes.length; i++)
    {
      // potomek je ccs tridy .image
      if ( elLogo.childNodes[i].className == "image" )
      {
        var elAnchor = elLogo.childNodes[i];
            // prochazeni potomku a.image
        for ( j = 0; j < elAnchor.childNodes.length; j++)
        {
          // potomek je <span>
            if ( elAnchor.childNodes[j].tagName == "SPAN" )
            {
                var elSpan = elAnchor.childNodes[j];
                    // prochazeni potomku a.image
                for ( k = 0; k < elSpan.childNodes.length; k++)
                {
                  // potomek je <img />
                    if ( elSpan.childNodes[j].tagName == "IMG" )
                    {
                            var elImg = elSpan.childNodes[j];
                            
                            if (elImg && elImg.offsetHeight == 0)
                            {
                                Event.observe(window, 'load', function (e)
                                {
                                    setTimeout(logoCentering, 1000);
                                }
                                
                                );
                                return false;
                            }
                            
                            // vertikalni posun obrazku v ramci h2#logo
                            var offsetTop = parseInt(( 50 - elImg.offsetHeight ) / 2 ); // 128 -> Safari bug
                            
                            // posouvat obrazek ma cenu pouze pokud je obrazek mensi nez vyska h2#logo
                            if ( offsetTop > 0 )
                            {
                                // posun obrazku o zjisteny offset
                                elAnchor.style.overflow = "visible";
                                elImg.style.position = "relative";
                                elImg.style.top = offsetTop + "px";
                            }
                        }
                    }
                }
            }
        }
    }
}
function colour(el)
{
    el.className = "hover";
}

function decolour(el)
{
    el.className = "";
}

/**
 * Prohodi v danem elementu tridy
 * 
 * @param {Object} el element na kterem provest vymenu 
 * @param {String} class_1 Prvni trida
 * @param {String} class_2 Druha trida
 */
function swap_classes(el, class_1, class_2)
{    
    if (el)
    {
        if (-1 != el.className.search(class_1))
        {
            el.className = el.className.replace(class_1, class_2);
        } 
        else
        if (-1 != el.className.search(class_2))
        {
            el.className = el.className.replace(class_2, class_1);
        } 
    }
}

/**
 * Prohodi titulky daneho elementu
 * 
 * @param {Object} el Element na kterem provest vymenu
 * @param {String} title_1 Prvni titulek
 * @param {String} title_2 Druhy titulek
 * 
 */
function swap_titles(el, title_1, title_2)
{
    if (el)
    {                
        if (-1 != el.title.search(title_1))
        {
            el.title = el.title.replace(title_1, title_2);
        } 
        else
        if (-1 != el.title.search(title_2))
        {
            el.title = el.title.replace(title_2, title_1);
        } 
    }    
}
