


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


Cufon.replace('h3');
Cufon.replace('h4');
Cufon.replace('#menu li');

$('.parentLink').click(function() {
	$.each($(this).siblings().children('ul'), function() {
		if($(this).is(':visible')) {
		$(this).fadeToggle("slow");
		}
	});
	$(this).children('ul').fadeToggle("slow");
});
    
    
var flexiBackground = function(){
    
    /**
        CONFIGURATION:
        Define the size of our background image
    */
    var bgImageSize = {
        width : 1400,
        height : 895
    };
    /**
        Declare and define variables
    */ 
    var $window,
        $body,
        imageID = "expando",
        tallClass = 'tall',
        wideClass = 'wide',
        $bgImage, $wrapper, img, url, imgAR;
        
    /**
        Are we dealing with ie6?
    */
    var ie6 = ($.browser.msie && parseInt($.browser.version, 10) <= 6);
    
    /**
        Set up the action that happens on resize
    */
    var resizeAction = function() {
        var win = {
            height : $window.height(),
            width : $window.width()
        };

        // The current aspect ratio of the window
        var winAR = win.width / win.height;

        // Determine if we need to show the image and whether it needs to stretch tall or wide
        if (win.width < bgImageSize.width && win.height < bgImageSize.height) {
            $body
                .removeClass(wideClass)
                .removeClass(tallClass);
        } else if ((win.w < bgImageSize.width && win.height >= bgImageSize.height) || (winAR < imgAR)) {
            $body
                .removeClass(wideClass)
                .addClass(tallClass);
            // Center the image
            $bgImage.css('left', Math.min(((win.width - bgImageSize.width) / 2), 0));
        } else if (win.width >= bgImageSize.width) {
            $body
                .addClass(wideClass)
                .removeClass(tallClass);
            $bgImage.css('left', 0);
        }
        
        // Need to fix the height of the wrapper for IE6
        if (ie6) {
            $wrapper.css('height', win.height);
        }
    };
    
    return {
        
        /*
            Sets up the basic functionality
        */
        initialize : function() {

            // No need for any of this if the screen isn't bigger than the background image
//          if (screen.availWidth <= bgImageSize.width || screen.availHeight <= bgImageSize.height) {
//              return;
//          }
// I'm doing this because I have a big picture but I'm confused about it
            // Grab elements we'll reference throughout
            $window = $(window);
            $body = $('body');
            
            // Parse out the URL of the background image and drop out if we don't have one
            url = $body.css('background-image').replace(/^url\(("|')?|("|')?\);?$/g, '') || false;  
            if (!url || url === "none" || url === "") {
                return;
            }
            // Get the aspect ratio of the image
            imgAR = bgImageSize.width / bgImageSize.height;

            // Create a new image element
            $bgImage = $('<img />')
                        .attr('src', url)
                        .attr('id', imageID);
                        
            // Create a wrapper and append the image to it.
            // The wrapper ensures we don't get scrollbars.
            $wrapper = $('<div></div>')
                            .css({
                                'overflow' : 'hidden',
                                'width' : '100%',
                                'height' : '100%',
                                'z-index' : '-1'
                            })
                            .append($bgImage)
                            .appendTo($body);
                            
            // IE6 Doesn't do position: fixed, so let's fake it out.
            // We'll apply a class which gets used in the CSS to emulate position: fixed
            // Otherwise, we'll simply used position: fixed.
            if (ie6) {
                $wrapper.addClass('ie6fixed');
            } else {
                $wrapper.css({
                    'position' : 'fixed',
                    'top' : 0,
                    'left' : 0
                });
            }
            
            // Set up a resize listener to add/remove classes from the body 
            $window.bind('resize', resizeAction);

            // Set it up by triggering a resize
            $window.trigger('resize');
        }
    };
}();

//using support.leadingWhitespace to target lte IE8
	if ( jQuery.support.leadingWhitespace == false ) {
jQuery(document).ready(flexiBackground.initialize);
}

});
