var pages = new Array;
var curPage;
var iLink;
var arrows, lArrow, rArrow;
var links = new Array;

$(function() {
    $('.page').each(function() {
        pages[this.id] = $(this);
    });

    $('#nav a').each(function() {
        var t = $(this);
        links[this.href] = this;
        
        t.click(function() {
            showPage(this.href);
            registerClick(this.href);
        });
    });
    
    arrows = $('#p-arrows li');
    lArrow = $('#p-arrows li:first');
    rArrow = $('#p-arrows li:last');
    
    arrows.each(function() {
        var t = $('a:first', this);
        t.click(function() {
            showPage(this.href);
            return false;
        });
    });
    
    iLink = $('#logo a:first');
    iLink.click(function() {
        showPage('#');
        registerClick();
        return false;
    });
    
    if (location.hash) {
        showPage(location.hash);
        registerClick(location);
    }
});

function showPage(pageName) {
    var hashPos = pageName.indexOf('#');
    if (hashPos != -1) pageName = pageName.substring(hashPos + 1);
    
    // если ткнули в лого
    if (pageName == '') {
        if (curPage) hide(curPage);
        arrows.fadeOut('slow');
        location.hash = '#';
        curPage = null;
        return false;
    }
    
    // если ткнули по ссылке "проекты", показываем первый
    if (pageName == 'projects') pageName = $('#projects .page:first').attr('id');
    
    // если страница уже показана, выходим
    if (pages[pageName] == curPage) return false;
    
    // если страница - не проект
    if (pageName.indexOf('projects') == -1) {
        if (curPage) hide(curPage);
        arrows.fadeOut('slow');
        show(pages[pageName]);
    }
    
    // если проект
    else {
        if (curPage) hide(curPage);
        show(pages[pageName]);
        
        // если это не последний из проектов
        if (pageName != $('#projects .page:last').attr('id')) {
            rArrow.fadeIn('slow');
            $('a:first', rArrow).attr('href', '#' + pages[pageName].next('.page').attr('id'));
        }
        else {
            rArrow.fadeOut('slow');
        }
        
        // если это не первый из проектов
        if (pageName != $('#projects .page:first').attr('id')) {
            lArrow.fadeIn('slow');
            $('a:first', lArrow).attr('href', '#' + pages[pageName].prev('.page').attr('id'));
        }
        else {
            lArrow.fadeOut('slow');
        }
    }
    
    curPage = pages[pageName];
    location.hash = '#' + pageName;
}

function registerClick(href) {
    if (href) {
        href = href.toString();
        if (href.indexOf('#projects-') != -1) href = href.replace(/\-[a-z\d_]+$/, '');
    }
    
    for (i in links) {
        if (i != href) $(links[i]).removeClass('current');
        else $(links[i]).addClass('current');
    }
}

function show(j) {
    var height = j.height();
    j.css({'height': 0, 'display': 'block'});
    j.animate(
        {
            height: height,
            marginTop: -height/2
        },
        'slow'
    );
}

function hide(j) {
    j.animate(
        {
            height: 0,
            marginTop: 0
        },
        'slow',
        function() {
            j.css({'display': 'none', 'height': 'auto'});
        }
    );
}


var img = new Image; img.src = '/i/bg_60.png';
var img = new Image; img.src = '/i/but_arrows.png';

