// vrati nahodny retezec zadane delky
function get_rand_str(delka)
{
    var out = '';
    for (var i = 0; i < delka; i++) {
        switch (Math.round(Math.random() * 2)) {
            case 0:
                znak = 48 + (Math.round(Math.random() * 9));
                break;
            case 1:
                znak = 65 + (Math.round(Math.random() * 25));
                break;
            case 2:
                znak = 97 + (Math.round(Math.random() * 25));
                break;
        }
        out += String.fromCharCode(znak);
    }
    return out;
}


// obsluha popup linku
function popit(el)
{
    el = evt.fix(el);
    if (el) {
        // muze se stat, ze udalost vyvola kliknuti na <img> obaleneho tagy <a>
        // v tom pripade se to musi osetrit...
        elm = el.target;
        if (el.target.tagName.toLowerCase() != 'a') {
            if (el.target.parentNode.tagName.toLowerCase() == 'a') {
                elm = el.target.parentNode;
            }
        }
        // ktera trida mne vyvolala?
        var zasah = 0;
        if (cls.has(elm, 'popup_i1') || cls.has(elm, 'popup_1')) {
            zasah = 1;
            _sirka = 390; _vyska = 200;
            windowParam = 'menubar=0,status=0,toolbar=0,scrollbars=1'; 
        }
        else if (cls.has(elm, 'popup_i2') || cls.has(elm, 'popup_2')) {
            zasah = 1;
            _sirka = 800; _vyska = 600;
            windowParam = 'menubar=0,status=0,toolbar=0,scrollbars=1'; 
        }
        else if (cls.has(elm, 'popup_i0') || cls.has(elm, 'popup_0')) {
            zasah = 1;
            windowParam = ''; 
        }
        else if (cls.has(elm, 'popup_i3') || cls.has(elm, 'popup_3')) {
            zasah = 1;
            _sirka = 640; _vyska = 420;
            windowParam = 'menubar=0,status=0,toolbar=0,scrollbars=1'; 
        }

        // vypocet pozice okna (na stred obrazovky)
        if (windowParam) {
            x = Math.round((window.screen.width - _sirka) / 2);
            y = Math.round((window.screen.height - _vyska) / 2);
            windowParam += ',width=' + _sirka + ',height=' + _vyska + ',left=' + x + ',top=' + y; 
        }
        // generovani popup okna
        if (zasah) {
            window.open(elm, get_rand_str(10), windowParam); 
            el.preventDefault();
        }
        return false; // tohle zrejme nema smysl, ale pro klid v dusi... :)
    }
    return true; // tohle zrejme nema smysl, ale pro klid v dusi... :)
}


// podtrhne v labelech accesskey (pokud je pro label definovan)
function pop_a()
{
    acka = document.getElementsByTagName("a");
    for (i = 0; i < acka.length; i++) {
        if (cls.has(acka[i], 'popup_i1') || 
            cls.has(acka[i], 'popup_i2') || 
            cls.has(acka[i], 'popup_i0') || 
            cls.has(acka[i], 'popup_i3') || 
            cls.has(acka[i], 'popup_0') || 
            cls.has(acka[i], 'popup_1') || 
            cls.has(acka[i], 'popup_2') ||
            cls.has(acka[i], 'popup_3')){
            evt.add(acka[i], 'click', popit);
        }
    }
}


/**
* Nastaveni vysky menu.
*/
function menu_height()
{
    var o = document.getElementById('obsah');
    var m = document.getElementById('menu');
    if (o.offsetHeight > m.offsetHeight) {
        if (document.all) {
            // IE
            var s = document.all['menu'].style;
            s.height = o.offsetHeight;
        }
        else if (document.getElementById) {
            // W3C
            var s = document.getElementById('menu').style;
            s.height = o.offsetHeight + "px";
        }
    }
}


// vim: set et ts=4 sw=4 enc=utf-8 si: 
