$(document).ready(function() {
    $('head').append('<link rel="stylesheet" type="text/css" href="/css/css3.css" />');
    
    $('#expand_left a').click(function() {
        $('#left_menu').animate({left: '-240px'}, 50, function() {
            var o = $(this);
            $('#expand_left').hide();
            $('ul.menu', o).show();
            $('#hide_menu_link').show();
            o.animate({'left': 0});
        });
        return false;
    });
    
    $('#hide_menu_link').click(function() {
        $('#left_menu').animate({left: '-240px'}, 70, function() {
            var o = $(this);
            $('#expand_left').show();
            $('ul.menu', o).hide();
            $('#hide_menu_link').hide();
            o.animate({'left': '-200px'});
        });
        return false;
    });
});

var ft = null

$(window).bind('resize', function() {
    if(no_right.t) clearTimeout(no_right.t);
    no_right.t = setTimeout(no_right.exec, 50);
    
    if(ft) clearTimeout(ft);
    ft = setTimeout(function() {experts.start()}, 50);
});

no_right = {
    t: null, 
    exec: function() {
        var cw = $('#content');
        var rb = $('div.right', cw);
        if(rb.length > 0) {
            if(cw.width() <= 940) {
                $('div.main', cw).addClass('no_right');
                var fr = $('#fake_right');
                if(fr.length > 0) {
                    fr.show();
                    tours_rotator.start();
                } else {
                    $('div.left', cw).find('ul.menu').after('<div id="fake_right">'+rb.html()+'</div>');
                    $(document).ready(function() {
                        tours_rotator.start();
                    });
                }
                rb.hide();
            } else {
                $('div.main', cw).removeClass('no_right');
                rb.show();
                $('#fake_right').hide();
                tours_rotator.start();
            }
        }
    }
}

experts = {
    data: new Array(), 
    c: null, 
    timeout: 10000, 
    t: null, 
    cur: 0, 
    
    start: function() {
        clearTimeout(experts.t);
        
        experts.c = $('#faces');
        experts.c.html('');
        var c_count = Math.floor(experts.c.width()/170);
        var l_count = c_count*2;
        if(experts.data.length < l_count) l_count = experts.data.length;
        
        var code = '';
        
        for(var i = 0;i < l_count;i++) {
            if(i%c_count == 0) code += '<div class="face-c">';
            code += experts.make_one(experts.data[i]);
            if((i+1)%c_count == 0 || i+1 == l_count) code += '<div class="clear">&nbsp;</div></div>';
            experts.cur = i;
        }
        experts.c.append(code);
        
        if(experts.data.length > l_count) {
            var n_count = c_count;
            code = '';
            
            var next = experts.cur+1;
            
            for(var i = 0;i < n_count;i++) {
                if(i%c_count == 0) code += '<div class="face-c">';
                code += experts.make_one(experts.data[next]);
                if((i+1)%c_count == 0 || i+1 == n_count) code += '<div class="clear">&nbsp;</div></div>';
                next += 1;
                if(next >= experts.data.length) next = 0;
            }
            experts.c.append(code);
            experts.cur = next;

            experts.t = setTimeout(function() {experts.slide()}, experts.timeout);
        }
    },
    
    slide: function() {
        $(experts.c.find('div.face-c')[0]).animate({height: 'hide'}, 350, function() {
            var c_count = Math.floor(experts.c.width()/160);
            
            var n_count = c_count;
            code = '';
            
            var next = experts.cur+1;
            if(next >= experts.data.length) next = 0;
            
            for(var i = 0;i < n_count;i++) {
                if(i%c_count == 0) code += '<div class="face-c">';
                code += experts.make_one(experts.data[next]);
                if((i+1)%c_count == 0 || i+1 == n_count) code += '<div class="clear">&nbsp;</div></div>';
                next += 1;
                if(next >= experts.data.length) next = 0;
            }
            experts.c.append(code);
            experts.cur = next;

            $(this).remove();
            
            experts.t = setTimeout(function() {experts.slide()}, experts.timeout);
        });
    },
    
    make_one: function(info) {
        return '<div class="face"><a href="/about/staff/" class="userpic"><img src="'+(info.userpic ? '/resize/media-size-from-full-to-small-f-'+info.userpic : '/img/nopic-small.gif')+'" alt="" /></a><p><a href="/about/staff/">'+info.username+'</a></p><p class="icq"><img src="http://status.icq.com/online.gif?icq='+info.icq+'&img=26">'+info.icq+'</p></div>'
    }
}

tours_rotator = {
    data: new Array(),
    t: null,
    c: null, 
    timeout: 10000, 
    cur: 0, 
    
    start: function() {
        if(tours_rotator.data.length == 0) return false;
        
        clearTimeout(tours_rotator.t);
        
        tours_rotator.c = $('div.si_container');
        tours_rotator.c.html(tours_rotator.make_one(tours_rotator.data[0]));
        tours_rotator.cur = 0;
        if(experts.data.length > 1) {
            var next = tours_rotator.cur+1;
            if(next >= tours_rotator.data.length) next = 0;
            tours_rotator.cur = next;
            tours_rotator.c.append(tours_rotator.make_one(tours_rotator.data[next]));

            tours_rotator.t = setTimeout(function() {tours_rotator.slide()}, tours_rotator.timeout);
        }
    },
    
    slide: function() {
        $(tours_rotator.c.find('div.si_bg')[0]).animate({height: 'hide'}, 350, function() {
            var next = tours_rotator.cur+1;
            if(next >= tours_rotator.data.length) next = 0;
            tours_rotator.cur = next;
            tours_rotator.c.append(tours_rotator.make_one(tours_rotator.data[next]));
            $(this).remove();
            
            tours_rotator.t = setTimeout(function() {tours_rotator.slide()}, tours_rotator.timeout);
        });
    },
    
    make_one: function(info) {
        if(!info || info === undefined) return false;
        return '<div class="si_bg" style="background-image:url(/resize/gallery-size-from-full-to-showcase-f-'+info.image+')">'+
                        '<div class="si_table png">'+
                            '<p class="si_h">'+
                                '<a href="'+info.link+'" onclick="'+info.onclick+'">'+info.country+'</a>'+
                            '</p>'+
                            '<p>'+
                                '<small>'+info.description+
                                '<!--<strong> '+info.date+'</strong>--></small>'+
                                '<span class="tp">'+info.price+'</span>'+
                            '</p>'+
                        '</div>'+
                    '</div>';
    }
}
