var alk = {
    init    : function() {
        alk.logoFix();
        alk.vAlign();
        alk.resize();
        alk.mainMenu();
        alk.drawCat();
        alk.drawSub();
        alk.subMenu();
        alk.copyright();
    },
    logoFix : function() {
        if (!$('logo')) { return; }
        if (
            Prototype.Browser.IE && 
            6 >= parseInt(navigator.appVersion.split(' ')[3])
        ) {
            $('logo').setStyle({
                'filter': 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'images/logo.png\')',
                'backgroundImage': 'none'
            });
        }
    },
    vAlign  : function() {
        var xObject = $('main') ? $('main') : $$('body').first();
        var xHeight = document.viewport.getHeight();
        var tHeight = xObject.offsetHeight;
        if (xHeight > tHeight) {
            xObject.setStyle({
                'marginTop' : (xHeight - tHeight)/2 + 'px'
            });
        } else {
            xObject.setStyle({
                'marginTop' : 0
            });
        }
    },
    resize  : function() {
        var xResize = window.onresize;
        var xThis = this;
        window.onresize = function() {
            xThis.vAlign();
            xResize;
        }
    },
    mainMenu: function() {
        if (!$('nav')) { return; }
        $('nav').select('li').each(function(obj) {
            var xSubs = obj.down(1);
            if (xSubs) {
                xSubs.setStyle({
                    'width'   : obj.getDimensions().width + 'px',
                    'top'     : obj.getDimensions().height + 'px',
                    'display' : 'none'
                });
                var old = !obj.hasClassName('on');
                obj.onmouseover = function() {
                    xSubs.show();
                    if (old) {
                        this.addClassName('on');
                    }
                }
                obj.onmouseout = function() {
                    xSubs.hide();
                    if (old) {
                        this.removeClassName('on');
                    }
                }
            }
        });
    },
    drawCat : function() {
        if (!$('cat')) { return; }
        var catDL = $$('#nav .on dl');
        if (!catDL.first()) { return; }
        $('cat').update(catDL.first().innerHTML);
    },
    drawSub : function() {
        if (!$('catsub')) { return; }
        var catDL = $$('#sub .on dl');
        if (!catDL.first()) { return; }
        var tId = $$('#sub .on b').first().id;
        $('catsub').update(new Element('dl').update(catDL.first().innerHTML));
        $('catsub').select('dd').each(function(ddObj, index) {
            ddObj.addClassName(tId + '_0' + (index + 1) + '_00');
        });
    },
    subMenu : function() {
        if (!$('sub01')) { return; }
        for (var i = 1; i < 5; i++) {
            swfobject.embedSWF(
                'images/sub_0' + i + '.swf',
                'sub0' + i,
                '83',
                '47',
                '9.0.0',
                '',
                false,
                {menu:false,scale:false,wmode:'transparent'},
                false
            );
        }
    },
    copyright : function() {
        if (!$('copyright')) { return; }
        swfobject.embedSWF(
            'images/copyright.swf',
            'copyright',
            '330',
            '22',
            '9.0.0',
            '',
            false,
            {menu:false,scale:false,wmode:'transparent'},
            false
        );
    }
};
document.observe('dom:loaded', alk.init);
