jQuery(document).ready(function ($) {

    // ADD 'error' class to all <dd> that has non-empty <span class='error'> children.
    $('dd:has(span.error:parent)').addClass('error');

    // TAKE A TOUR
    var tour_slide_width = 700;
    $('a.tour_pagenavi_left, a.tour_pagenavi_right, #tour_nav a').click(function () {
        var clicked = $(this).attr('rel');

        // set link active
        $('#tour_nav a').removeClass('tour_nav_active');
        $('#tour_nav a').eq(clicked - 1).addClass('tour_nav_active');

        // restart gif animation
        $('#tour_slider ul').children('li').eq(clicked - 1).find('img').each(function () {
            var src = $(this).attr('src');
            if (src.match(/\.gif$/)) {
                $(this).attr('src', '');
                $(this).attr('src', src);
            }
        });

        // show
        $('#tour_slider ul').children('li').eq(clicked - 1).css('display', 'block');
        $('#tour_slider ul').children('li').eq(clicked - 1).css('visibility', 'visible');
        $('#tour_slider ul').stop().animate({
            left: tour_slide_width * (clicked - 1) * -1
        }, 300, function () {
            var size = $('#tour_slider ul').children('li').size();
            for (var i = 0; i < size; i++) {
                if (i != (clicked - 1)) {
                    $('#tour_slider ul').children('li').eq(i).css('visibility', 'hidden');
                }
            }
        });

        return false;
    });

    // FRESHFACE CONTACT VALIDATION
    $('#fc_submit').click(function () {
        var send_email = true;
        var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;

        if (!filter.test($('#fc_email').attr('value')) || $('#fc_email').attr('value') == '') {
            $('#fc_email').animate({
                left: -10
            }, 100).animate({
                left: 10
            }, 100).animate({
                left: -10
            }, 100).animate({
                left: 10
            }, 100).animate({
                left: 0
            }, 100);

            send_email = false;
        }

        if ($('#fc_name').attr('value') == '') {
            $('#fc_name').animate({
                left: -10
            }, 100).animate({
                left: 10
            }, 100).animate({
                left: -10
            }, 100).animate({
                left: 10
            }, 100).animate({
                left: 0
            }, 100);

            send_email = false;
        }

        if ($('#fc_text').attr('value') == '') {
            $('#fc_text').animate({
                left: -10
            }, 100).animate({
                left: 10
            }, 100).animate({
                left: -10
            }, 100).animate({
                left: 10
            }, 100).animate({
                left: 0
            }, 100);

            send_email = false;
        }

        if ($('#fc_captcha').attr('value') == '') {
            $('#fc_captcha').animate({
                left: -10
            }, 100).animate({
                left: 10
            }, 100).animate({
                left: -10
            }, 100).animate({
                left: 10
            }, 100).animate({
                left: 0
            }, 100);

            send_email = false;
        }

        if (send_email == false) {
            return false;
        }
    });

    // PORTFOLIO & GALLERY
    $('.portfolio_link').hover(function () {
        $(this).find('img').stop().animate({
            opacity: 0.5
        }, 300);
    }, function () {
        $(this).find('img').stop().animate({
            opacity: 1
        }, 300);
    });

    $('.gallery-icon').find('a').click(function () {
        $.prettyPhoto.open($(this).attr('href'), '', '');
        return false;
    });

    $('.gallery_link').hover(function () {
        $(this).find('img').stop().animate({
            opacity: 0.5
        }, 300);
    }, function () {
        $(this).find('img').stop().animate({
            opacity: 1
        }, 300);

    });

    // TOGGLE
    $(".toggle_body").hide();

    $("a.toggle").click(function () {
        $(this).parent().next(".toggle_body").slideToggle();
        $(this).toggleClass("toggle_active");
        return false;
    });

    $("a.toggle_all").text('Expand All');
    $("a.toggle_all").click(function () {
        if($(this).text() == 'Expand All') {
            $("a.toggle").addClass("toggle_active").parent().next(".toggle_body").slideDown();
            $(this).text('Collapse All');
        } else {
            $("a.toggle").removeClass("toggle_active").parent().next(".toggle_body").slideUp();
            $(this).text('Expand All');
        }
        return false;
    });

    // move to & toggle hash specified anchor.
    var hash = window.location.hash;
    if(hash.length > 1) {
        $('a.toggle[name=' + hash.substring(1) + ']').addClass("toggle_active").parent().next(".toggle_body").slideToggle();
    }

    // TABS
    $('.sc_tab').click(function () {
        $('.sc_tab').removeClass('sc_tab_active');
        $(this).addClass('sc_tab_active');
        var which = $(this).attr('title');
        $(this).parent().parent().find('.sc_tab_single_box').css('display', 'none');
        $(this).parent().parent().find('.sc_tab_single_box').eq(which).css('display', 'block');
    });

    // CUFON
    Cufon.now()
    Cufon.set('ignoreClass', 'nocufon');
    Cufon.set('fontFamily', 'Myriad Pro Semibold');

    Cufon.replace('.cufon, h1, h2, h3, h4', {
        fontFamily: 'Myriad Pro Semibold'
    });

    Cufon.replace('#nav_wrapper ul.menu li.level1 > a', {
        fontFamily: 'Myriad Pro Bold',
        textShadow: '0px 1px 2px rgba(0,0,0,0.3)'
    });

    // cufon will cause delay/flicker on submenu items.
    if (!$.browser.msie) {
        Cufon.replace('#nav_wrapper ul.sub-menu li a', {
            fontFamily: 'Myriad Pro Semibold',
            hover: 'true'
        });
    } else {
        $('#nav_wrapper ul.sub-menu li a').css('font-family', 'Arial,Helvetica,sans-serif');
        $('#nav_wrapper ul.sub-menu li a').css('font-size', '11px');
        $('#nav_wrapper ul.sub-menu li a').css('font-weight', 'bold');
    }

    Cufon.replace('.intro_page h2, .intro_fullwidth h2, .intro_home h2', {
        fontFamily: 'Myriad Pro Bold',
        textShadow: '0px 2px 3px rgba(0,0,0,0.25)'
    });

    Cufon.replace('.action h3, h4.slide_title, h4.paralel_s, h4.paralel_b_title', {
        fontFamily: 'Myriad Pro Bold'
    });

    Cufon.replace('.action_button', {
        fontFamily: 'Myriad Pro Bold',
        textShadow: '#3d3d3d 1px 1px'
    });

    Cufon.replace('.widget_footer h3', {
        fontFamily: 'Myriad Pro Bold',
        textShadow: '#222 1px 1px'
    });

    Cufon.replace('.widget_sidebar h3', {
        fontFamily: 'Myriad Pro Semibold'
    });

    Cufon.replace('#tour .tour_nav_name', {
        fontFamily: 'Myriad Pro Bold',
        textShadow: '0px 1px 1px #000'
    });

    Cufon.replace('table.hgrid th', {
        fontFamily: 'Myriad Pro Semibold'
    });

    Cufon.replace('table.vgrid th', {
        fontFamily: 'Myriad Pro Semibold'
    });

    Cufon.replace('#content input[type="submit"]', {
        fontFamily: 'Myriad Pro Semibold'
    });

    Cufon.replace('table.cart th', {
        fontFamily: 'Myriad Pro Semibold'
    });


    // NAVIGATION
    $('#nav_wrapper li.menu-item').hover(function () {
        $(this).addClass('hover');
        if(!$.browser.msie) {
            Cufon.replace('#nav_wrapper ul.sub-menu li a', {
                fontFamily: 'Myriad Pro Semibold',
                textShadow: 'none',
                hover: 'true'
            });
        }
        $(this).find('.sub-menu:first').stop(true, true).slideDown(200).show();
    }, function () {
        $(this).removeClass('hover');
        $(this).find('.sub-menu:first').stop(true, true).slideUp(0);
    });

});



