$(function(){

    function get_url_info() {
        var url = window.location.href;
        var sub_info = url.indexOf('#');
        return (sub_info > 0) ? url.substr(sub_info+1) : '';
    }

    function get_clear_url() {
        var url = this.location.href;
        var sub_info = url.indexOf('#');
        return (sub_info > 0) ? url.substr(0, sub_info) : url;
    }

    var cache = new Object;
    $('.asp_descr').addClass('hide');
    $('.fun_img img').hover(function(){
            var tar = '.' + $(this).attr('class');
            $('.asp_des ' + tar).removeClass('hide');
    }, function(){
            var tar = 'div.' + $(this).attr('class');
            $('.asp_des ' + tar).addClass('hide');
    }).attr({alt : ''});

    function load_tim(value){
        $('.fun_img').animate({'opacity': 0},function() {
                //$('.tim_name').animate({opacity: 0}, 700, function() {$(this).html(''); });
                $('.fun_img').addClass('unvis');
                $('.tim_name').html('');
                if(cache.rel !== undefined) {
                        $.each(cache.rel, function(i,pair){
                                $('.fun_img img[src="../img/'+ pair.asp + '.gif"]').removeClass(pair.func);//.addClass('hide');
                                $('.asp_des div[title="'+ pair.asp + '"]').removeClass(pair.func);
                                $('.'+pair.func+' .fill').html('');
                        });
                }
                if (value !== 'all') {
                $.getJSON("get_asp.php", { 'a' : value },
                        function(data){
                                cache = data;
                                //$('.tim_name').animate({opacity: 0}, 700, function() {$(this).html(data.title).animate({opacity: 1}, 700); });
                                $.each(data.rel, function(i,pair){
                                        $('.fun_img img[src="../img/'+ pair.asp + '.gif"]').addClass(pair.func);
                                        $('.asp_des div[title="'+ pair.asp + '"]').addClass(pair.func);
                                        $('.'+pair.func+' .fill').load('../descr/tim_descr/'+value+'_'+pair.asp+'.html', function() {
                                                $('.asp_des div[title="'+ pair.asp + '"] .asp_bor').clone().removeClass('asp_bor').addClass('asp_note').children('h6').addClass(pair.asp).end().prependTo('.'+pair.func+' .fill');
                                        });
                                });
                                $('.fun_img').animate({'opacity': 1}, 700).removeClass('unvis');
                                $('.asp_des').removeClass('hide');
                                $('.all_descr').hide();
                                $('.tim_name').html(data.title);//.animate({opacity: 1}, 700);
                                
                                window.location.hash = value;
                        });
                //});
                } else {
                    window.location.hash = '';
                    $('.all_descr').show();
                    $('.tim_name').html('');
                    $('.fun_img').animate({'opacity': 0}, 700).addClass('unvis');
                    //$('.tim_name').animate({opacity: 0}, 700, function() {$(this).html(''); });
                }
        });
        $('body').focus();
	$('.hack_focus').focus();
    }



    $('#select_tim').change(function() {
            var value = $(this).val();
            load_tim(value);
    });//.change();//.blur();

    var tim_name = get_url_info();
    var opt = $('#select_tim').find('option[value='+tim_name+']');
    var test_tim = (opt.size() > 0 ? true : false);
    if (test_tim)  opt.attr('selected','selected');
    $('#select_tim').trigger('change');

    
    $('.up_link').click(function(){
        $("html, body").animate({scrollTop: 0}, 1200, function() {} );
        return false;
    }); 
	
	$('.fun_img img').click(function(){
		var tar = '.' + $(this).attr('class');
		var coor = $('.tim_descr '+tar).offset().top - 15;
		$("html, body").animate({scrollTop: coor}, 1200, function() {/*scr_no = false;*/} );
	});
	
	
});
