//広場関連のイベント（リファクタリング対象）

function initTop() {
	
	$('#book_search').show();
	
	$('#top_book_submit').click(function(){
		var params = new Object();
		
		var category = $('#book_search select').val();
		var keyword = $.trim( $('#book_search input:text').val() );
		
		params['category'] = category;
		params['keyword'] = keyword;
		
		getMovieName("index").swfFunc('reload', params);
	});
	
	$('#top_chara_submit').click(function(){
        var params = new Object();
        
        var order = $('#chara_search select').val();
        var keyword = $.trim( $('#chara_search input:text').val() );
        
		params['order'] = order;
        params['keyword'] = keyword;
        
        getMovieName("index").swfFunc('reload', params);
    });
	
	$('#top_bg_submit').click(function(){
        var params = new Object();
        
        var order = $('#bg_search select').val();
        var keyword = $.trim( $('#bg_search input:text').val() );
        
        params['order'] = order;
        params['keyword'] = keyword;
        
        getMovieName("index").swfFunc('reload', params);
    });
	
	$('#top_user_submit').click(function(){
        var params = new Object();
        
        var type_elem = $('#user_search input:checked');
        var keyword = $.trim( $('#user_search input:text').val() );
        
		var type = '';
		if (type_elem.length == 2) {
			type = 'all';
		} else if (type_elem.length == 1) {
			type = type_elem.val();
		}
		
        params['type'] = type;
        params['keyword'] = keyword;
        
        getMovieName("index").swfFunc('reload', params);
    });
	
	$('#top_search input:text').focus(function() {
		var target = $(this).siblings('.top_submit');
		$(this).unbind('keypress').keypress(function(e){
	        if(e.which == 13) {
	            target.click();
	        }
	    });
	});
	
	$('#chara_search select[name="top_chara_sort"]').change(function(){
		$('#top_chara_submit').click();
	});
	
	$('#bg_search select[name="top_bg_sort"]').change(function(){
        $('#top_bg_submit').click();
    });
	
	$('#user_search input:checkbox').change(function(){
		$('#top_user_submit').click();
	});
}

function setUserListElem(params) {
	
	if ( ('user_id' in window) && user_id == params['user_id']) {
		return $('#profile-' + params['user_id'] + '-own').parent();
	}
	
	if ($('#user_' + params['user_id'] + '_' + params['user_type']).size() > 0) {
		return $('#user_' + params['user_id'] + '_' + params['user_type']);
	}
	
	var temp_panel = $('#temp_list div.panel_content');
	
	temp_panel.prepend(getTempListHtml(params));
	
	if ('user_id' in window) {
        initMylist();
	}
	
	var add_user = temp_panel.find('div.user_list:first');
	add_user.children('p').children('a').click(function(e){
            
        ajaxFunc('myListCtrlBefore', '', this);
        $.post('/mylist/ctrlpanel',
               {
			   	'list' : 'temp',
                'id'   : params['user_id'],
                'prof_type' : params['user_type'] == '0' ? 'user' : 'user_chara'
			   },
               function(data){
                    $('#mylist_ctrlpanel').html(data);
                    ajaxFunc('myListCtrlComplete', data);
               });
        return false;
    });
    
    $('#temp_list').slideDown('fast');
	
	return add_user;
}

function getUserElemPos(user_elem) {
	
	if (user_elem.filter(':visible').size() > 0) {
		
		return user_elem.offset().top;
		
	}
	
	var elem = user_elem.parents('.panel').children('.panel_title_off');
	
	if (elem.size() > 0) {
		openSecondFramepanel(elem.parent().attr('id'));
        return user_elem.offset().top;
//		return elem.offset().top;
	
	} else {
		
        return $('#first_frame').offset().top + 10;
	}
	
}

flash.bookInfo = function (data) {
    hideSecondFrame();
	_gaq.push(['_trackPageview', '/profile/bookdetail']);
	
    var user_elem = setUserListElem({'user_id' : data[1], 'user_type' : '0', 'name' : data[2]});
	second_frame_pointer_y = getUserElemPos(user_elem);
	$("#point_second_frame_sp").css('top', (second_frame_pointer_y-$('#first_frame').offset().top-5) + 'px').show();
	
	var params = {'book_id'    : data[0],
                   'id'        : data[1],
                   'prof_type' : 'user'};
	
//	ajaxFunc('profileBefore', "", user_elem);

    $('#mylist_ctrlpanel').hide('fast');
	$('#second_frame').html(secondFrameLoadHtml());
	second_frame_pointer_y = $("#first_frame").offset().top + 10;
	showSecondFrame('fast', true);
	
    $.post('/profile/index', params,
           function (data) {
                if (!data) return;
                $('div#second_frame').html(data);
				$('#second_frame .panel_pointer').hide();
                ajaxFunc('profileComplete', data);
				params['info_type'] = info_type;
                
//				var pos = getSecondFramePos('#second_frame', second_frame_pointer_y);
//                $('#second_frame').animate({'top': pos + 'px'}, 'fast');
				
                ajaxFunc('profBookDetailBefore');
                $.post('/profile/bookdetail', params,
                       function (data) {
                            if (!data) return;
                            $('div#prof_book_data_detail').html(data);
                            ajaxFunc('profBookDetailComplete', data);
                       });
           });
}

flash.charaInfo = function (data) {
    hideSecondFrame();
	_gaq.push(['_trackPageview', '/profile/charadetail']);
	
    var user_elem = setUserListElem({'user_id' : data[1], 'user_type' : '0', 'name' : data[2]});
    second_frame_pointer_y = getUserElemPos(user_elem);
	$("#point_second_frame_sp").css('top', (second_frame_pointer_y-$('#first_frame').offset().top-5) + 'px').show();
	
	var params = {'chara_id'   : data[0],
                   'id'        : data[1],
                   'prof_type' : 'user'};
    
//	ajaxFunc('profileBefore', "", user_elem);

    $('#mylist_ctrlpanel').hide('fast');
    $('#second_frame').html(secondFrameLoadHtml());
    second_frame_pointer_y = $("#first_frame").offset().top + 10;
    showSecondFrame('fast', true);
	
    $.post('/profile/index', params,
           function (data) {
                if (!data) return;
                $('div#second_frame').html(data);
				$('#second_frame .panel_pointer').hide();
                ajaxFunc('profileComplete', data);
                params['info_type'] = info_type;
				
//				var pos = getSecondFramePos('#second_frame', second_frame_pointer_y);
//                $('#second_frame').animate({'top': pos + 'px'}, 'fast');
                
                ajaxFunc('profCharaDetailBefore');
                $.post('/profile/charadetail', params,
                       function (data) {
                            if (!data) return;
                            $('div#prof_chara_data_detail').html(data);
                            ajaxFunc('profCharaDetailComplete', data);
                       });
           });
}

flash.backInfo = function (data) {
	hideSecondFrame();
	_gaq.push(['_trackPageview', '/profile/backdetail']);
	
    var user_elem = setUserListElem({'user_id' : data[1], 'user_type' : '0', 'name' : data[2]});
    second_frame_pointer_y = getUserElemPos(user_elem);
	$("#point_second_frame_sp").css('top', (second_frame_pointer_y-$('#first_frame').offset().top-5) + 'px').show();
	
	var params = {'back_id'   : data[0],
                   'id'        : data[1],
                   'prof_type' : 'user'};
    
//	ajaxFunc('profileBefore', "", user_elem);

    $('#mylist_ctrlpanel').hide('fast');
    $('#second_frame').html(secondFrameLoadHtml());
    second_frame_pointer_y = $("#first_frame").offset().top + 10;
    showSecondFrame('fast', true);
	
    $.post('/profile/index', params,
           function (data) {
                if (!data) return;
                $('div#second_frame').html(data);
				$('#second_frame .panel_pointer').hide();
                ajaxFunc('profileComplete', data);
                params['info_type'] = info_type;
				
//				var pos = getSecondFramePos('#second_frame', second_frame_pointer_y);
//                $('#second_frame').animate({'top': pos + 'px'}, 'fast');
                
                ajaxFunc('profBackDetailBefore');
                $.post('/profile/backdetail', params,
                       function (data) {
                            if (!data) return;
                            $('div#prof_back_data_detail').html(data);
                            ajaxFunc('profBackDetailComplete', data);
                       });
           }); 
}

flash.userInfo = function (data) {
	hideSecondFrame();
	
	var user_elem = setUserListElem({'user_id' : data[0], 'user_type' : data[1], 'name' : data[2]});
	second_frame_pointer_y = getUserElemPos(user_elem);
	
    var params = {'id'        : data[0],
                   'prof_type' : data[1] == '0' ? 'user' : 'user_chara'};
    
//    ajaxFunc('profileBefore', "", user_elem);

    $('#mylist_ctrlpanel').hide('fast');
    $('#second_frame').html(secondFrameLoadHtml());
    second_frame_pointer_y = $("#first_frame").offset().top + 10;
    showSecondFrame('fast', true);
	
    $.post('/profile/index', params,
           function (data) {
                if (!data) return;
                $('div#second_frame').html(data);
				$('#second_frame .panel_pointer').hide();
                ajaxFunc('profileComplete', data);
           });
}

flash.topSelect = function (param) {
    $("#top_search .top_search_elem").hide();
    switch (param[0]) {
        case 'book':
            $("#book_search").show();
            break;
        
        case 'character':
            $("#chara_search").show();
            break;
            
        case 'background':
            $("#bg_search").show();
            break;
            
        case 'user':
            $("#user_search").show();
            break;
    }
}
