jQuery(function ($) {
    var updatePage = function (pageName, currentPageName) {
        var isCurrentPage = pageName === (currentPageName || pageName);
        $('#link_' + pageName)[isCurrentPage ? 'addClass' : 'removeClass']('current');
        $('#page_' + pageName)[isCurrentPage ? 'show' : 'hide']();
    };
    var util = ch.curcio.util;
    var bgImages = {
        small: {
            img: new Image(),
            url: 'img/curcio_s.jpg'
        },
        large: {
            img: new Image(),
            url: 'img/curcio_l.jpg'
        }
    };
    var pages = {
        home: {
            linkText: 'home'
        },
        services: {
            linkText: 'dienstleistungen'
        },
        references: {
            linkText: 'referenzen'
        },
        team: {
            linkText: 'team'
        },
        contact: {
            linkText: 'kontakt'
        }
    };
    var defaultBgImage = 'large';
    var defaultPageName = 'home';
    var startPageName = document.location.hash.substring(1) || defaultPageName;
    var html;
    startPageName = startPageName in pages ? startPageName : defaultPageName;
    util.each(bgImages, function (bgImage) {
        bgImage.img.onload = function () {
            bgImage.loaded = true;
            $('#frame').css('background-image', 'url(' + (bgImages[defaultBgImage].loaded ? bgImages[defaultBgImage] : bgImage).url + ')').show();
        };
        bgImage.img.src = bgImage.url;
    });
    html = [];
    util.each(pages, function (page, pageName) {
        html.push('<a id="link_' + pageName + '">' + page.linkText + '</a>');
    });
    $('#navigation').html(html.join('&nbsp;|&nbsp;'));
    util.each(pages, function (page, pageName) {
        $('#link_' + pageName).click((function (currentPageName) {
            return function () {
                util.each(pages, function (page, pageName) {
                    updatePage(pageName, currentPageName);
                });
            }
        })(pageName));
        $.get('content/' + pageName + '.txt', function (content) {
            var currentPageName = 
            $('#page_' + pageName).html('<pre>' + content + '</pre>');
            if (pageName === startPageName) {
                updatePage(pageName);
            }
        });
    });
});

