$(function(){
    $('.mmenu td.m a').each( function( idx, curr ) {
        $(curr).parent().hover(
            function() { $(this).addClass('a'); },
            function() { $(this).removeClass('a'); } );
        $(curr).parent().click( function() { window.location = curr.href; } );
    });
    $('.mmenu td.f a').each( function( idx, curr ) {
        $(curr).parent().hover(
            function() { $(this).removeClass('f'); $(this).addClass('fa'); },
            function() { $(this).removeClass('fa'); $(this).addClass('f'); } );
        $(curr).parent().click( function() { window.location = curr.href; } );
    });
    $('.mmenu td.l a').each( function( idx, curr ) {
        $(curr).parent().hover(
            function() { $(this).removeClass('l'); $(this).addClass('la'); },
            function() { $(this).removeClass('la'); $(this).addClass('l'); } );
        $(curr).parent().click( function() { window.location = curr.href; } );
    });

    var hide = true;
    function hidePopup() {
        if (hide) $('.popup').fadeOut();
        hide=true;
    }
    $('.mmenu td.menu .w').each( function( idx, curr ) {
        $(curr).hover(
            function() { hide=false; $(this).addClass('a'); $('.popup').fadeIn(); },
            function() { $(this).removeClass('a'); setTimeout(hidePopup, 200); });
    });
    $('.mmenu td.menu .popup').hover(
        function() { hide=false; $(this).fadeIn(); },
        function() { setTimeout(hidePopup, 200); });

    function findLabel($input) {
        return $.trim($('label[for=' + $input.attr('id') + ']').text());
    }
    function getVal($input) {
        var label = findLabel($input);
        var val = $.trim($input.val());
        if (val == label)
            return '';
        return val;
    }

    $('input[type=text].frm, textarea.frm').each(function(){
        var $input = $(this);
        var label = findLabel($input);
        $input.focusin(function(){
            $input.removeClass('hint');
            $input.val(getVal($input));
        });
        $input.focusout(function(){
            if (!$.trim($input.val()))
                $input.val(label).addClass('hint');
        });
        $input.val(label).addClass('hint');
    });

    var disabled = false;
    $('form.frm').submit(function(){
        var $form = $(this);
        if (disabled)
            return false;
        var $inputs = $('input[type=text].frm, textarea.frm');
        var a = [];
        $inputs.each(function(){
            var $input = $(this);
            var val = getVal($input);
            if (val)
                a.push({name: $input.attr('name'), value: val});
        });
        if (!a.length) {
            alert('Please fill in a form.');
            return false;
        }
        disabled = true;
        $.post($form.attr('action'), a, function(r){
            disabled = false;
            if (r.success) {
                $inputs.each(function(){
                    var $i = $(this);
                    $i.val(findLabel($i)).addClass('hint');
                    window.location = '/thank-you'
                });
            } else {
                alert(r.msg);
            }
        }, 'json');
        return false;
    });

    $('#id_request_catalog_trigger').click(function(){
        $('#id_request_catalog_popup').slideToggle();
    });

    $('#searchform').submit(function(){
        return $.trim($(this).find('[name=q]').val());
    });

    $('id_request_catalog_form').submit(function(){
        _gaq.push(['_trackPageview', '/QuoteRequest']);
        return true;
    });

    $('.contact-email').click(function(){
        _gaq.push(['_trackPageview', '/EmailSent']);
        return true;
    });

    $('.pdf-link').click(function(){
        _gaq.push(['_trackPageview', '/PdfDownload']);
        return true;
    });

    // Garmoshka
    $('.garmoshka:not(.current)').hide();
    $('.sg a').click(function(){
        $(this).parent('.sg').next('.garmoshka:first').toggle();
        return false;
    });
});


