/**
 * ふぉろー支援用スクリプト
 *
 * @author	HisatoS.
 * @version 10/02/11 last update
 * @copyright http://www.nono150.com/
 */

$(document).ready(function(){
	// facebox起動
	$('a[href$=".jpg"],a[href$=".gif"],a[href$=".png"], a[rel*=facebox]').facebox();
	$('a[href$=".jpg"] img,a[href$=".gif"] img,a[href$=".png"] img').addClass("imgbox");
	
	$("#loading").css("display","none");
	
	// API limit
	$("#api_limit").html($("#limit_cnt").val());
	$("#api_rest").html($("#rest_cnt").val());
	$("#api_use").html($("#use_cnt").val());
	$("#api_time").html($("#reset_time").val());
	
	// メニュー固定
	getMenu("start");
	var menu = "#action";
	var menuYloc = null;
	menuYloc = parseInt($(menu).css("top").substring(0,$(menu).css("top").indexOf("px")));
	$(window).scroll(function(){ 
		offset = menuYloc+$(document).scrollTop()+"px";
		$(menu).animate({top:offset},{
			duration:350,
			queue: false
		});
	});
});

/**
 * メニューロード
 */
function getMenu(mode){
	$.get("/twitter/menu.php",{
		"mode" : mode
	},
	function(data,status){
		$("#btn_edit").html(data);
		$("#action").css("display","none");
		$("#action p").clone().prependTo("body").attr("id", "action_copy");
		if($("#action_copy").size()){
			$("#action").remove();
		}else{
			$("#action").css("display","block");
			loadMenu();
		}
		$("#hits_cnt").html($("#hit_cnt").val());
		//$('btn_add').disabled = false;
		if($("#reset_flg").val() == "on") $("#btn_reset").removeAttr("disabled");
		else $("#btn_reset").attr("disabled","disabled");
	});
}

/**
 * リストロード
 */
function getList(){
	//$("#list").scrollTop(0);
	$($.browser.opera ? document.compatMode == "BackCompat" ? "body" : "html" :"html,body").scrollTop(0);
	$("#list").css("display","none");
	$("#loading").css("display","block");
	var love = $("input:radio[name='love']:checked").val();
	var lang = $("input:radio[name='lang']:checked").val();
	var friends_cnt = $("#friends_cnt").val();
	var followers_cnt = $("#followers_cnt").val();
	$.post("/twitter/list.php",{
		"mode" : "list",
		"love" : love,
		"lang" : lang,
		"friends_cnt" : friends_cnt,
		"followers_cnt" : followers_cnt
	},
	function(data,status){
		$("#loading").css("display","none");
		$("#list").css("display","block");
		$("#list").empty();
		$("#list").html(data);
		getMenu("list");
		loadList();
	});
}

/**
 * ローディング後用
 */
function loadMenu(){
	// 一覧取得
	$("#btn_list").click(function(){
		getList();
	});
	// リセット
	$("#btn_reset").click(function(){
		$("#list").css("display","none");
		$("#loading").css("display","block");
		var love = $("input:radio[name='love']:checked").val();
		var lang = $("input:radio[name='lang']:checked").val();
		var friends_cnt = $("#friends_cnt").val();
		var followers_cnt = $("#followers_cnt").val();
		$.post("/twitter/list.php",{
			"mode" : "reset",
			"love" : love,
			"lang" : lang,
			"friends_cnt" : friends_cnt,
			"followers_cnt" : followers_cnt
		},
		function(data,status){
			$("#loading").css("display","none");
			$("#list").css("display","block");
			$("#list").empty();
			$("#list").html(data);
			getMenu("list");
			loadList();
			
			// API limit
			$("#api_limit").html($("#limit_cnt2").val());
			$("#api_rest").html($("#rest_cnt2").val());
			$("#api_use").html($("#use_cnt2").val());
			$("#api_time").html($("#reset_time2").val());
		});
	});
	// 全チェック
	$("#btn_chk").click(function(){
		$("#listtable input:checkbox").attr("checked",true);
		return false;
	});
	// 全解除
	$("#btn_unchk").click(function(){
		$("#listtable input:checkbox").attr("checked",false);
		return false;
	});
	// フォローする
	$("#btn_add").click(function(){
		$($.browser.opera ? document.compatMode == "BackCompat" ? "body" : "html" :"html,body").scrollTop(0);
		$("#list").css("display","none");
		$("#loading").css("display","block");
		var member = new Array();
		$("input:checkbox[id^='member']:checked").each(function(){
			member.push($(this).val());
		});
		var love = $("input:radio[name='love']:checked").val();
		var lang = $("input:radio[name='lang']:checked").val();
		
		$.post("/twitter/list.php",{
			"mode" : "add",
			"love" : love,
			"lang" : lang,
			"member" : member.toString()
		},
		function(data,status){
			$("#loading").css("display","none");
			$("#list").css("display","block");
			$("#list").html(data);
			loadend("add");
		});
	});
	// リムブする
	$("#btn_remove").click(function(){
		$($.browser.opera ? document.compatMode == "BackCompat" ? "body" : "html" :"html,body").scrollTop(0);
		$("#list").css("display","none");
		$("#loading").css("display","block");
		var member = new Array();
		$("input:checkbox[id^='member']:checked").each(function(){
			member.push($(this).val());
		});
		var love = $("input:radio[name='love']:checked").val();
		var lang = $("input:radio[name='lang']:checked").val();
		$.post("/twitter/list.php",{
			"mode" : "remove",
			"love" : love,
			"lang" : lang,
			"member" : member.toString()
		},
		function(data,status){
			$("#loading").css("display","none");
			$("#list").css("display","block");
			$("#list").html(data);
			loadend("remove");
		});
	});
	// ブロックする
	$("#btn_block").click(function(){
		$("#list").css("display","none");
		$("#loading").css("display","block");
		var member = new Array();
		$("input:checkbox[id^='member']:checked").each(function(){
			member.push($(this).val());
		});
		var love = $("input:radio[name='love']:checked").val();
		var lang = $("input:radio[name='lang']:checked").val();
		$.post("/twitter/list.php",{
			"mode" : "block",
			"love" : love,
			"lang" : lang,
			"member" : member.toString()
		},
		function(data,status){
			$("#loading").css("display","none");
			$("#list").css("display","block");
			$("#list").html(data);
			loadend("block");
		});
	});
}

function loadList(){
	// 行クリックでチェック
	$("#listtable tr").children("td:nth-child(1)").nextAll().click(function(){
	  	var target = $(this).parent().children("td:first").children("input:checkbox[id^='member']");
		if(target.attr("checked")) target.attr("checked",false);
		else target.attr("checked",true);
	});
}

function loadend(mode){
	//$("#list").scrollTop(0);
	getList();
	if(mode == "add") alert('おまたせモ！ふぉろー完了メ！');
	else if(mode == "remove") alert('おまたせモ！りむぶ完了メ！');
	else if(mode == "block") alert('おまたせモ！ブロック完了メ！');
	// API limit
	$("#api_limit").html($("#limit_cnt2").val());
	$("#api_rest").html($("#rest_cnt2").val());
	$("#api_use").html($("#use_cnt2").val());
	$("#api_time").html($("#reset_time2").val());
}

