
var Element = {
    addClass: function(element, className) {
        if (!Element.hasClass(element, className))
            element.className += ' ' + className;
    },

    hasClass: function(element, className) {
        return element.className.match(new RegExp('(^|\\s+)' + className + '($|\\s+)'));
    },

    toggleClass: function(element, className) {
        if (Element.hasClass(element, className))
            Element.removeClass(element, className);
        else
            Element.addClass(element, className);
    },

    removeClass: function(element, className) {
        element.className = element.className.replace(new RegExp('(^|\\s+)' + className + '($|\\s+)'), ' ');
    }
};

function do_nothing() {
    var ma = document.getElementsByTagName('span');

    for (var i = 0; ma && i < ma.length; i++) {
        if (ma[i].className.indexOf('nothing') != -1) {
            var a = ma[i].innerHTML.replace('&nbsp;ät&nbsp;', '@');
            ma[i].innerHTML = '<a href="mailto:' + a + '">' + a + '</a>';
        }
    }
}

function init_menu() {
    var m = document.getElementById('sisukord');

    for (var i = 0; m && i < m.childNodes.length; i++) {
        var n = m.childNodes[i];
        if (n.nodeType == 1 && n.tagName.toLowerCase() == 'li') {
            var sublist = n.getElementsByTagName('ul');
            if (sublist && sublist.length > 0) {
                var links = n.getElementsByTagName('a');
                if (Element.hasClass(n, 'selected')) {
                    links[0].onclick = function() {
                        return false;
                    }
                } else {
                    links[0].onclick = function() {
                        if (window.onresize)
                            window.onresize = null;
                        Element.toggleClass(this.parentNode, 'open');
                        setTimeout('ie_feature()', 100);
                        return false;
                    };
                }
            }
        }
    }
}

function ie_feature() {
    // workaround for IE position: relative; bug
    if (navigator.appName && navigator.appName.toLowerCase().indexOf('internet explorer') != -1)
        window.onresize = function() { document.location.reload(); }
}

function init() {
    init_menu();
    do_nothing();
    ie_feature();

    var indexLink = document.getElementById('link_avaleht');
    if (indexLink) {
        var logoLink = document.createElement('a');
        logoLink.setAttribute('href', indexLink.getAttribute('href'));
        logoLink.setAttribute('title', indexLink.getAttribute('title'));
        logoLink.style.display = 'block';
        logoLink.style.height = '180px';
        logoLink.style.width = '180px';
        logoLink.style.position = 'absolute';
        logoLink.style.top = '6px';
        document.body.appendChild(logoLink);
    }
}


