if (typeof GF == 'undefined') {var GF = {};}
(function($){
	GF.isSubmit = false;
	GF.id = 0;
	GF.member_max_rows = 60;
	GF.pic_click = "0";
	GF.pic_sort = "0";
	GF.lists_data = [];
	GF.lists_count = 0;
	GF.lists_insert_enable = false;
	GF.denyUndo = function(obj){
		if (!confirm("신청대기자 목록으로 보냅니다. 되돌리시겠습니까?"))
		{
			return false;
		}
		var btn_undo = $(obj);
		var tr = btn_undo.closest("tr");
		var id = tr.attr("id").replace("id_","");
		btn_undo.replaceWith('<img src="/img/common/loader1.gif" alt="loading" class="loader" />');
		$.post('/group_follow/call_deny_undo.php',{
			id:id
		},function(res){
			$("#count_deny").html(parseInt($("#count_deny").html())-1);
			$("#count_request").html(parseInt($("#count_request").html())+1);
			tr.fadeOut("slow",function(){tr.remove()});
		});
	};

	GF.outDelete = function(obj){
		if (!confirm("해제하시면 신청하기전 상태가 되며, 해당 유저가 다시 가입할 수 있습니다.\n정말 해제 하시겠습니까?"))
		{
			return false;
		}
		var btn_out_delete = $(obj);
		var tr = btn_out_delete.closest("tr");
		var id = tr.attr("id").replace("id_","");
		btn_out_delete.replaceWith('<img src="/img/common/loader1.gif" alt="loading" class="loader" />');
		$.post('/group_follow/call_out_delete.php',{
			id:id
		},function(res){
			$("#count_out").html(parseInt($("#count_out").html())-1);
			tr.fadeOut("slow",function(){tr.remove()});
		});
	};

	GF.userOut = function(obj, m){
		if(m == "admin"){
			var msg = "정말 탈퇴 시키겠습니까?";
		}else{
			var msg = "정말 탈퇴 하시겠습니까?";
		}
		if (!confirm(msg))
		{
			return false;
		}
		var btn_out = $(obj);
		var tr = btn_out.closest("[id^=id_]");
		var id = tr.attr("id").replace("id_","");
		btn_out.replaceWith('<img src="/img/common/loader1.gif" alt="loading" class="loader" />');
		$.post('/group_follow/call_user_out.php',{
			id:id
		},function(res){
			if(res == "0"){
				alert("가입후 1일 이상 지나야 탈퇴하실 수 있습니다.");
			}
			if(m == "admin"){
				$("#count_user").html(parseInt($("#count_user").html())-1);
				$("#count_out").html(parseInt($("#count_out").html())+1);
				tr.fadeOut("slow",function(){tr.remove()});
			}else{
				document.location.reload();
			}
		});
	};

	GF.check_hash_tag = function(){
		var hash_tag_val = $("#hash_tag").val();
		if(hash_tag_val != ""){
			window.open('/twitter/search.php?q='+hash_tag_val.replace("#","%23"));
		}else{
			alert("해쉬태그를 입력하세요.");
			$("#hash_tag").focus();
		}
	};

	GF.submit = function(){
		if (this.isSubmit) {return false;}
		$("#btn_gf_submit").replaceWith('<img src="/img/common/loader2.gif" alt="loading" class="loader" />');
		this.isSubmit = true;
		return true;
	};

	GF.callMember = function(obj){
		var btn_out = $(obj);
		var jsonData = JSON.parse($(obj).attr("data"));
		$("#member_list").load('/group_follow/call_member.php',{
			id:GF.id,
			max_rows:GF.member_max_rows,
			pic_sort:GF.pic_sort,
			page:jsonData.page
		},function(){
			if (GF.pic_click == '0'){GF.member_list_toggle();}
		});
	};
	GF.member_list_toggle = function(){
		$("#member_list a.thumb").toggle(function(){Msg.clickReply(this); return false;}, function(){Msg.clickUnReply(this); return false;});
	};

	GF.confirm_allow = function(obj){
		var _obj = $(obj);
		var tr = _obj.closest("tr");
		var id = tr.attr("id").replace("id_","");
		var _obj_parent = _obj.parent();
		_obj_parent.html('<img src="/img/common/loader1.gif" alt="loading" class="loader" />');
		$.post('/group_follow/call_allow.php',{
			id:id
		},function(res){
			$("#count_user").html(parseInt($("#count_user").html())+1);
			$("#count_request").html(parseInt($("#count_request").html())-1);
			tr.fadeOut("slow",function(){tr.remove()});
		});
	};

	GF.confirm_deny = function(obj){
		if (!confirm("정말 가입거절 하시겠습니까?"))
		{
			return false;
		}
		var _obj = $(obj);
		var tr = _obj.closest("tr");
		var id = tr.attr("id").replace("id_","");
		var _obj_parent = _obj.parent();
		_obj_parent.html('<img src="/img/common/loader1.gif" alt="loading" class="loader" />');
		$.post('/group_follow/call_deny.php',{
			id:id
		},function(res){
			$("#count_deny").html(parseInt($("#count_deny").html())+1);
			$("#count_request").html(parseInt($("#count_request").html())-1);
			tr.fadeOut("slow",function(){tr.remove()});
		});
	};

	GF.delete_group = function(obj, id){
		if (!confirm("정말 모임을 폐쇄 하시겠습니까?"))
		{
			return false;
		}
		var _obj = $(obj);
		_obj = $('<img src="/img/common/loader1.gif" alt="loading" class="loader" />').replaceAll(_obj);
		$.post('/group_follow/call_delete_group.php',{
			id:id
		},function(res){
			if(res == "-1"){
				_obj.replaceWith("<span>모임폐쇄실패</span>");
				alert("자기자신을 제외한 모임 회원이 존재할 경우 폐쇄 하실수 없습니다.\n회원명부에서 회원을 탈퇴 시킬수 있습니다.");
			}else if (res == "0")
			{
				_obj.replaceWith("<span>모임폐쇄실패</span>");
				alert("개설자만 폐쇄하실 수 있습니다.");
			}else if (res == "1")
			{
				_obj.replaceWith("<span>모임폐쇄완료</span>");
				alert("모임이 폐쇄되었습니다.");
				document.location.href = "/group_follow/";
			}
			
		});
	};

	GF.load_lists = function(obj){
		var _obj = $(obj);
		_obj = $('<img src="/img/common/loader1.gif" alt="loading" class="loader" />').replaceAll(_obj);
		$("#insert_list").load('/group_follow/call_lists_edit.php',{},function(){
			_obj.replaceWith('<a href="" id="btn_lists_edit">리스트 관리</a>');
		});
		GF.lists_insert_enable = true;
		GF.lists_data = [];
		GF.lists_count = 0;
	};

	GF.close_lists = function(){
		$("#insert_list").html("");
		GF.lists_insert_enable = false;
		GF.lists_data = [];
		GF.lists_count = 0;
	};

	GF.change_select_list = function(obj){
		var _obj = $(obj);
		if (_obj.val() == "new")
		{
			$("#list_name").css("display","inline").focus();
		}else{
			$("#list_name").val("").css("display","none");
		}
	};

	GF.insert_id = function(){
		var text_insert_id = $("#text_insert_id");
		if(text_insert_id.val().search(/[^0-9\,\-\~\s]/gi) >= 0){
			$("#error_step_1").html("(숫자, 콤마, 하이픈만 사용가능 합니다.)");
			return false;
		}else{
			$("#error_step_1").html("");
		}
		$.getJSON('/group_follow/call_num_to_user.php',{
			id:GF.id,
			num:text_insert_id.val(),
			limit:500
		},function(json_data){
			GF.lists_data = json_data;
			GF.lists_count = json_data.length;
			GF.insert_id_exe();
		});
	};

	GF.insert_id_exe = function(){
		var id_lists = [];
		for(var val in GF.lists_data){
			if(GF.lists_data[val][1]){
				id_lists.push(GF.lists_data[val][1]);
			}
		}
		$("#id_lists").val(id_lists.join(", "));
	};

	GF.insert_list = function(){
		var list_id = "";
		if (GF.lists_data.length == 0){
			$("#error_step_2").html("(아이디를 추가하세요)");
			return false;
		}

		if ($("#list_id").val() == "0"){
			$("#error_step_2").html("(리스트를 선택하세요)");
			return false;
		}

		if ($("#list_id").val() == "new")
		{
			var list_name_val = $("#list_name").val();
			if (list_name_val == "")
			{
				$("#error_step_2").html("(리스트이름을 입력하세요.)");
				$("#list_name").focus();
				return false;
			}

			if (list_name_val.length > 25)
			{
				$("#error_step_2").html("(리스트명은 25글자를 초과할 수 없습니다.)");
				$("#list_name").focus();
				return false;
			}


			if (/[^a-z0-9\-_]/.test(list_name_val))
			{
				$("#error_step_2").html("(리스트명은 영문 , 숫자 , - , _ 문자만 가능합니다.)");
				$("#list_name").focus();
				return false;
			}

			if (/^[0-9]/.test(list_name_val))
			{
				$("#error_step_2").html("(리스트명은 숫자로 시작될 수 없습니다. 2010lucky(X) lucky2010(O))");
				$("#list_name").focus();
				return false;
			}
			
			$("#error_step_2").html("");

			$.post('/twitter/post_list.php',{
				name:$("#list_name").val()
			},function(res){
				if(res == "0"){
					$("#list_progress").prepend("<p>새 리스트 생성 실패</p>");
					return false;
				}else
				{
					$("#list_progress").prepend("<p>새 리스트를 만들었습니다.</p>");
					var list_id = res;
					GF.insert_list_exe(list_id);
				}
			});
		}else{
			GF.insert_list_exe($("#list_id").val());
			$("#error_step_2").html("");
		}
		$("#btn_insert_list").replaceWith('<img src="/img/common/loader1.gif" id="insert_list_loader" alt="loading" class="loader" />');
		
	};

	GF.insert_list_exe = function(list_id){
		if (GF.lists_data.length > 0 && GF.lists_insert_enable)
		{
			$.post('/twitter/post_list_members.php',{
				list_id:list_id,
				user:GF.lists_data[0][0]
			},function(res){
				if(res == "1"){
					$("#list_progress").prepend('<p>'+GF.lists_data[0][1]+' 님을 리스트에 등록 하였습니다. ('+(GF.lists_count - GF.lists_data.length + 1)+' / '+GF.lists_count+')</p>');
				}else if (res == "0")
				{
					$("#list_progress").prepend('<p>'+GF.lists_data[0][1]+' 님 리스트 등록 <span class="red">실패</span> 하였습니다. ('+(GF.lists_count - GF.lists_data.length + 1)+' / '+GF.lists_count+')</p>');
				}
				GF.lists_data.shift();
				GF.insert_id_exe();
				GF.insert_list_exe(list_id);
			});
		}else{
			$("#insert_list_loader").replaceWith('<input type="button" id="btn_insert_list" value="등록하기" />');
		}
	};
	GF.delete_thumb = function(obj){
		if (!confirm("대표이미지를 정말 삭제 하시겠습니까?")){return false;}
		var _obj = $(obj);
		_obj.replaceWith('<img src="/img/common/loader1.gif" id="insert_list_loader" alt="loading" class="loader" />');
		$.post('/group_follow/call_delete_thumb.php',{
			id:GF.id
		},function(res){
			if(res == "1"){
				$("#thumb_text").html("현재 대표이미지는 등록되어 있지 않습니다.");
			}else{
				$.alertTop(res);
			};
		});
		return false;
	};


	GF.no_help_1 = function(obj, mode){
		var _obj = $(obj);
		if (mode == "hidden")
		{
			$("#hidden_intro_show").removeClass("hidden");
			$("#hidden_intro_hidden").addClass("hidden");
			$("#intro_desc").addClass("hidden");
			setCookie("hidden_intro","1",1);
		}else{
			$("#hidden_intro_show").addClass("hidden");
			$("#hidden_intro_hidden").removeClass("hidden");
			$("#intro_desc").removeClass("hidden");
			delCookie("hidden_intro");
		}
	};

	GF.creator_exe = function(){
		$.post('/group_follow/call_creator_exe.php',{
		},function(res){
			if(res == "1"){
				setTimeout(function(){GF.creator_exe();},1000);
			}
		});
	};

	GF.set_follow_rate = function(obj){
		var _obj = $(obj);
		var user_id = _obj.closest("tr").find("input[type=hidden]").attr("value");
		_obj = $('<img src="/img/common/loader4.gif" alt="loading" class="loader" />').replaceAll(_obj);
		$.post('/group_follow/call_follow_rate.php',{
			id:this.id,
			user_id:user_id
		},function(res){
			_obj.replaceWith("<span>"+res+"</span>");
		});
	};

	GF.btn_pre_next_click = function(){
		var mode = $(this).parent().attr("class");
		if (mode == "btn_next"){
			var el = $("#div_photo .photo_image:last").clone();
			$("#div_photo .photo_image:last").remove();
			if ($("div",el).size()){
				var src = $("div",el).attr("data");
				$("div",el).remove();
				$(el).append("<img src='"+src+"' />");
			}			
			var html = el.toHtml();				
			$("#div_photo").prepend(html);
			
			var el = $("#div_photo .photo_image:last").clone();
			$("#div_photo .photo_image:last").remove();
			if ($("div",el).size()){
				var src = $("div",el).attr("data");
				$("div",el).remove();
				$(el).append("<img src='"+src+"' />");
			}		
			var html = el.toHtml();				
			$("#div_photo").prepend(html);
		}else if (mode == "btn_pre"){			
			var el = $("#div_photo .photo_image:first").clone();
			$("#div_photo .photo_image:first").remove();							
			var html = el.toHtml();				
			$("#div_photo").append(html);

			var el = $("#div_photo .photo_image:first").clone();
			$("#div_photo .photo_image:first").remove();			
			var html = el.toHtml();				
			$("#div_photo").append(html);

			if ($("div","#div_photo .photo_image:eq(3)").size()){
				var src = $("div","#div_photo .photo_image:eq(3)").attr("data");
				$("div","#div_photo .photo_image:eq(3)").remove();
				$("#div_photo .photo_image:eq(3)").append("<img src='"+src+"' />");
			}

			if ($("div","#div_photo .photo_image:eq(4)").size()){
				var src = $("div","#div_photo .photo_image:eq(4)").attr("data");
				$("div","#div_photo .photo_image:eq(4)").remove();
				$("#div_photo .photo_image:eq(4)").append("<img src='"+src+"' />");
			}		
		}
		return false;
	}
})(jQuery);
