$(document).ready(function()
{
    pageResizer.init();
    pageNavigator.init();
    $('body').removeClass('initializing');

    $('div.page').css('visibility', 'visible');


    $('#page-home').click(function()
    {
        pageNavigator.gotoPage('page-projects');
    });

    $('#page-projects').click(function()
    {
        pageNavigator.gotoPage('page-about');
    });

    $('#page-about').click(function()
    {
        pageNavigator.gotoPage('page-contact');
    });

    $('#page-contact').click(function()
    {
        pageNavigator.gotoPage('page-sponsorships');
    });

    $('#page-sponsorships').click(function()
    {
        pageNavigator.gotoPage('page-projects');
    });

    if (window.location.hash != '')
    {
        var $startPage = $('#page-' + window.location.hash.substr(1));
        windowSlide.slideWithoutAnimationTo($startPage.offset().top);
    }
});

var pageResizer = {

    $pages: null,
    windowHeight: null,

    init: function()
    {
        this.$pages = $('div.page');
        this.windowHeight = $(window).height();

        this.adjustPages();
        $(window).resize(pageResizer.onWindowResize);
    },

    onWindowResize: function()
    {
        var newHeight = $(window).height();
        if (newHeight != pageResizer.windowHeight)
        {
            pageResizer.windowHeight = newHeight;
            pageResizer.adjustPages();
        }

        pageNavigator.positionCurrentPage();        
    },

    adjustPages: function()
    {
        pageResizer.$pages.each(function()
        {
            pageResizer.adjustPageHeight($(this));
            pageNavigator.positionCurrentPage();
        });
    },

    adjustPageHeight: function($page)
    {
        var newHeight = pageResizer.windowHeight;

        if (navigator.userAgent.indexOf("iPhone") != -1 &&
            window.orientation != null)
        {
            if (window.orientation != 90 && window.orientation != -90)
            {
                newHeight += 120;
            }
        }
        
        $page.css('min-height', newHeight);

        if ($.browser.msie == true && parseInt($.browser.version) < 7)
        {
            $page.css('height', newHeight);
        }
    }
};
