

$(document).ready(function()
{
	
    /* adjust styling for macosx-based browsers */
    if (navigator.appVersion.indexOf('Mac') != -1 || $.browser.safari) {
        $('head').append('<link type="text/css" rel="stylesheet" media="all" href="nulea_macosx.css?G" />');
    }
    if ($.browser.mozilla && parseInt($.browser.version) < 1.9 && navigator.appVersion.indexOf('Mac') != -1) {
        $('head').append('<link type="text/css" rel="stylesheet" media="all" href="nulea_macosxff2.css?G" />');
    }
    
    
    // update nav tabs for active state
    $('#primary ul.links li a.active').parent().toggleClass('nodiv');
    $('#primary ul.links li a.active').parent().prev().toggleClass('nodiv');
    
    /* autoclear input field */

    $("#signup-block-form .form-item input[type='text']").toggleVal();
  

    // onrollover button for form submit image buttons - toggle "ovr" to the filename
    $("form input[type='image'][src*='images/form_submit_'], .more-link img[src*='images/btn_']").hover(
        function () {
            $(this).attr('src', function() {
                return this.src.replace('.png', '_ovr.png');
            });
        },
        function () {
            $(this).attr('src', function() {
                return this.src.replace('_ovr', '');
            });
        }
    );
    $('.front #subcontent ul#subcontent-nav').tabs();

    // determine width of scroller depending on number of features
    var total = $('#block-block-profiler .view-content li').siblings().length;

    // enable scroller functionality
    var prof = $('#block-block-profiler .view-content .item-list ul');
    $(prof).cycle({
        prev: '#block-block-profiler .feature-nav a.prev',
        next: '#block-block-profiler .feature-nav a.next',
        fx: 'scrollHorz',
        timeout: 8000,
        speed: 750,
        after: function () {
            var curr = $(this).prevAll().length+1;
            $('#block-block-profiler .feature-nav .counter .curr').html(curr);
        }
    });

    // scroller on-rollover effects
    $('#block-block-profiler .view-content .item-list .view-data-photo').hover(
        function() {
            $('#block-block-profiler .view-content .item-list .view-data-subject a').addClass('hover');
        },
        function() {
            $('#block-block-profiler .view-content .item-list .view-data-subject a').removeClass('hover');
    });
    $('#block-block-profiler').hover(
        function() {
            $(prof).cycle('pause');
        },
        function() {
            $(prof).cycle('resume');
    });
    
    // determine width of scroller depending on number of features
    var total = $('.block-feature .block-scroller .view-content li').siblings().length;

    $('.block-feature .block-scroller .item-list ul').css({
        "width": ( total * $('.block-feature .block-scroller .view-content').width() ) + 'px'
    });

    // enable scroller functionality
    $('.block-feature .block-scroller .view-content .item-list').serialScroll({
        items: 'li.feature',
        prev: '.block-feature .block-scroller .feature-nav a.prev',
        next: '.block-feature .block-scroller .feature-nav a.next',
        offset: 0,
        start: 0,
        duration: 500,
        force: true,
        stop: true,
        lock: false,
        cycle: false,
        easing: 'easeOutQuart',
        onAfter: function (e) {
            var curr = $(e).prevAll().length+1;
            $('.block-feature .block-scroller .feature-nav .counter .curr').html(curr);
        }
    });

});

jQuery.easing.easeOutQuart = function (x, t, b, c, d) {
        return -c * ((t=t/d-1)*t*t*t - 1) + b;
};


$.fn.cycle.transitions.scrollHorz = function($cont, $slides, opts) {
    $cont.css('overflow','hidden').width();
    opts.before.push(function(curr, next, opts, fwd) {
        $.fn.cycle.commonReset(curr,next,opts);
        opts.cssBefore.left = fwd ? (next.cycleW-1) : (1-next.cycleW);
        opts.animOut.left = fwd ? -curr.cycleW : curr.cycleW;
    });
    opts.cssFirst = { left: 0 };
    opts.cssBefore= { top: 0 };
    opts.animIn   = { left: 0 };
    opts.animOut  = { top: 0 };
};

/* -------------------------------------------------- *
 * ToggleVal Plugin for jQuery                        *
 * Version 1.0                                        *
 * -------------------------------------------------- *
 * Author:   Aaron Kuzemchak                          *
 * URL:      http://kuzemchak.net/                    *
 * E-mail:   afkuzemchak@gmail.com                    *
 * Date:     8/18/2007                                *
 * -------------------------------------------------- */

/* Toggles form input fields' default value */

jQuery.fn.toggleVal = function(focusClass) {
    this.each(function() {
        $(this).focus(function() {
            // clear value if current value is the default
            if($(this).val() == this.defaultValue) { $(this).val(""); }
            
            // if focusClass is set, add the class
            if(focusClass) { $(this).addClass(focusClass); }
        }).blur(function() {
            // restore to the default value if current value is empty
            if($(this).val() == "") { $(this).val(this.defaultValue); }
            
            // if focusClass is set, remove class
            if(focusClass) { $(this).removeClass(focusClass); }
        });
    });
}
