Site = {

    MAX_WIDTH : 1300,
    MAX_HEIGHT : 650,
    is_IE : -1, // Testing only

    origDiv : undefined,
    origImg : undefined,
	
	init : function() {

        Site.origDiv = '#fullScreenWrapper';
        Site.origImg = '#fullScreenWrapper img';

		$('div.tall-nav').hide();

        var rv = -1; // Return value assumes failure.
        if (navigator.appName == 'Microsoft Internet Explorer')
        {
            var ua = navigator.userAgent;
            var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
            if (re.exec(ua) != null)
                rv = parseFloat( RegExp.$1 );
        }

        Site.is_IE = rv;

		var isiPad = false;
		navigator.userAgent.indexOf("iPad") != -1 ? isiPad = true : isiPad = false;
		if (isiPad)
		{
    
			
		} else
		{
			Site.handleResize();

			// Check if browser width is less than 1600
			$(window).resize(function()
			{

				Site.handleResize();

			});
		}
		

		
// Setup Nav buttons
		
		$('#site-nav-about #site-nav-work').css({ 'cursor' : 'pointer' });
		
		$('#site-nav-logo').bind('click', function(e){
			
			e.preventDefault();
			var url = "/";
			if (window.location.pathname != url) window.location.href = url;
			return false;
			
		});
		
	
		$('#site-nav-about').bind('click', function(e)
		{
			e.preventDefault();
			var url = "/about/";
			if (window.location.pathname != url) window.location.href = url;
			return false;
			
		});
		
		$('#site-nav-work').bind('click', function(e)
		{
			e.preventDefault();
			var url = "/work/";
			if (window.location.pathname != url) window.location.href = url;
			return false;
			
		});
		
	},
	
	registerDivOverHandler : function ( target, css_class ) {
		
		$(target).bind('mouseover mouseout', function(e)
		{
			if (e.type == 'mouseover')
			{
				var src = $(css_class).css('background-image');
				var new_src = src.replace('.png', '-rollover.png');
							$(css_class).css({ 
								'background' : "transparent "+new_src+" no-repeat top left"
								 })
			} else
			{
				var src = $(css_class).css('background-image');
				var new_src = src.replace('-rollover.png', '.png');
				
				$(css_class).css({ 
					'background' : "transparent "+new_src+" no-repeat top left"
					 })
			}
			
		});
	},

    listenToNavClicks : function(left_func, right_func)
    {
        $('div.project-nav-left, div.project-nav-right').unbind();
        if(left_func != undefined && left_func != null)
        {
            $('div.project-nav-left').show();
            $('div.project-nav-left').click( left_func );
        }

        if(right_func != undefined && right_func != null)
        {
            $('div.project-nav-right').show();
            $('div.project-nav-right').click(right_func );
        }

    },

    
	
	registerImageOverHandler : function ( target ) {
		
		$(target).bind('mouseover mouseout', function(e)
		{
			if (e.type == 'mouseover')
			{
				var src	= $(target).attr('src');
				var new_src = src.replace('.png', '-rollover.png');
				$(target).attr('src', new_src);
			} else
			{
				var src	= $(target).attr('src');
				var new_src = src.replace('-rollover.png', '.png');
				$(target).attr('src', new_src);
			}
			
		});
	},


    scaleImage : function(width, height) {

        var ratio = Math.min( Site.MAX_WIDTH / width, Site.MAX_HEIGHT/ height );
        var new_width = ratio * width;
        var new_height = ratio * height;

        return { 'width' : new_width, 'height' : new_height };

    },
	

	handleResize : function () {
		
		
		var isiPad = false;
		navigator.userAgent.indexOf("iPad") != -1 ? isiPad = true : isiPad = false;
		if (isiPad)
		{
            			
		} else
		{

            // Project image viewer handling
            var newTop  = Math.floor((($(window).height() - 71) / 2) - 225);
            var newLeft = Math.floor(($(window).width() / 2) - 400);
            var newWidthClose = Math.floor(($(window).width() / 2) - 45);

            $('div#image-viewer-box').css({
                'top' : newTop,
                'left' : newLeft
            });

            $('div#image-viewer-container-close').css({
                'bottom' : '85px',
                'left' : newWidthClose
            });

            if(Site.is_IE > -1) // Is IE
            {

                //define original width and height of the image
                var imgWidth = $(Site.origImg).attr('width');
                var imgHeight = $(Site.origImg).attr('height');

                //define image ratio
                var ratio = imgHeight/imgWidth;

                //get browser dimensions
                var winWidth = $(window).width();
                var winHeight = $(window).height();
                var winRatio = winHeight/winWidth;

                //resize the image
                if (winRatio > ratio) {
                    $(Site.origDiv).height(winHeight);
                    $(Site.origDiv).width(winHeight / ratio);
                    $(Site.origImg).height(winHeight);
                    $(Site.origImg).width(winHeight / ratio);
                } else
                {
                    $(Site.origDiv).width(winWidth);
                    $(Site.origDiv).height(winWidth * ratio);
                    $(Site.origImg).width(winWidth);
                    $(Site.origImg).height(winWidth * ratio);
                }
            }
		}
	},

    isLoadingScreenVisible : function ( isVisible )
    {

        if (isVisible)
        {
            // Append to body
            var loading =
            '<div id="screen-blocker"></div>';

            $('body').append(loading);
//            Steady.trace("hide contrainer");
            $('#container').hide();
        } else
        {
            $('#container').show();
            $('body').find('#screen-blocker').remove();
        }

	},
	
    loadBackgroundImage : function( str ){

        if(Site.is_IE < 0)
        {
            var filterStr = '"progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\''+ str +'\', sizingMethod=\'scale\')"';
            $('body').css('background', 'url('+ str +') no-repeat center center fixed');
            $('body').css('-webkit-background-size', 'cover');
            $('body').css('-moz-background-size', 'cover');
            $('body').css('-o-background-size', 'cover');
            $('body').css('background-size', 'cover');
            $('body').css('filter', "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+ str +"', sizingMethod='scale')");
            $('body').css('-ms-filter', filterStr);
        } else
        {
            $(Site.origDiv).append('<img src="'+ str +'" />');
        }

        /*body {*/
        /*background: url('/site_media/img/home-bg.png') no-repeat center center fixed;*/
        /*-webkit-background-size: cover;*/
        /*-moz-background-size: cover;*/
        /*-o-background-size: cover;*/
        /*background-size: cover;*/

        /*filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/site_media/img/home-bg.png', sizingMethod='scale');*/
        /*-ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/site_media/img/home-bg.png', sizingMethod='scale')";*/
/*}*/


//    $('#fullScreenWrapper').find('img').unbind();
//    $('#fullScreenWrapper').find('img').remove();
//
//    // Add loader
//    $('#fullScreenWrapper').append("<h1 style='position:absolute;top:30px;left:30px;'>LOADING...</h1>");
//
//    $('#fullScreenWrapper').append("<img src='"+str+"' />");
//    $('#fullScreenWrapper').find('img').hide();
//    $('#fullScreenWrapper').find('img').load(function()
//    {
//        $('#fullScreenWrapper').find('h1').fadeOut('slow');
//        Site.handleResize();
//
//        $('#fullScreenWrapper').find('img').fadeIn('slow');
//    });
//
	}
	
	
	
}
