﻿var common_req;

function getXMLHttpRequest() {
	if (window.ActiveXObject) {
		try {
			return new ActiveXObject('Msxml2.XMLHTTP');
		} catch(e) {
			try {
				return new ActiveXObject('Microsoft.XMLHTTP');
			} catch(e1) { return null; }
		}
	} else if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	} else {
		return null;
	}
}

function commentbox(val){ 
	if( val == 'show'){
		pop_float('/taeyang/comment/pop_comment.asp',920,570);
		comment_list();
	}else{
		close_float();
	}
}

function comment_list(){
	if(document.getElementById("comment_list")) proc_comment('list',1);
	else setTimeout("comment_list()", 100);
}

function proc_comment(flag,page,idx,seq){
	ref_idx = "4";
	if(!page) page = 1;
	var url = "/taeyang/comment/cmt_body.asp?flag="+flag+"&ref_idx="+ref_idx+"&page="+page;
	if(flag == "insert"){
		var obj_cmt = document.getElementById('comment');
		var obj_writer_name = document.getElementById('writer_name');
		var obj_pwd = document.getElementById('pwd');
		if(trim(obj_cmt.value) == ''){
			alert('응원 메시지를 입력해주세요');
			obj_cmt.focus();
			return;
		}
		if(!chk_byte_length(obj_cmt , 80)) return;
		if(trim(obj_writer_name.value) == ''){
			alert('이름을 입력해주세요.');
			obj_writer_name.focus();
			return;
		}
		if(trim(obj_pwd.value) == ''){
			alert('비밀번호를 입력해주세요');
			obj_pwd.focus();
			return;
		}
		url = url + "&comment=" + encodeURIComponent(obj_cmt.value) + "&writer_name=" + encodeURIComponent(obj_writer_name.value)  + "&writer_id=guest&pwd=" + encodeURIComponent(obj_pwd.value);
	}
	else if(flag == "edit"){
		var obj_cmt = document.getElementById('edit_comment' + seq);
		var obj_pwd = document.getElementById('edit_pwd' + seq);
		if(trim(obj_cmt.value) == ''){
			alert('응원 메시지를 입력해주세요');
			obj_cmt.focus();
			return;
		}
		if(!chk_byte_length(obj_cmt , 80)) return;
		if(trim(obj_pwd.value) == ''){
			alert('비밀번호를 입력해주세요');
			obj_pwd.focus();
			return;
		}
		url = url + "&idx=" + idx + "&comment=" + encodeURIComponent(obj_cmt.value) + "&pwd=" + encodeURIComponent(obj_pwd.value);
	}
	else if(flag == "delete"){
		var obj_pwd = document.getElementById('del_pwd' + seq);
		if(trim(obj_pwd.value) == ''){
			alert('비밀번호를 입력해주세요');
			obj_pwd.focus();
			return;
		}
		if(!confirm('삭제하시겠습니까?')) return;
		url = url + "&idx=" + idx + "&pwd=" + encodeURIComponent(obj_pwd.value);
	}
	common_req = getXMLHttpRequest();
	common_req.onreadystatechange = CommentResult;
	common_req.open("GET", url, true);
	common_req.send(null);
}

function CommentResult(){
	if(common_req.readyState == 4) {
		if(common_req.status == 200){           
			var xmlDoc = common_req.responseText;
			if(document.getElementById("comment_list")) document.getElementById("comment_list").innerHTML = xmlDoc;
			if(document.getElementById("total_cnt_txt")) document.getElementById("total_cnt_txt").innerHTML = "<strong>" + document.getElementById("new_cnt").value + "</strong> <span class=\"color01\">&nbsp;/&nbsp;" + document.getElementById("total_cnt").value + "</span>";
			
			var pwdYN = 'N';
			if(document.getElementById("pwdYN")) if(document.getElementById('pwdYN').value == 'Y') pwdYN = 'Y';
			if(pwdYN == 'Y') alert('잘못된 비밀번호가 입니다.\n확인후 다시 시도해주세요.');
			
			var banYN = 'N';
			if(document.getElementById("banYN")) if(document.getElementById('banYN').value == 'Y') banYN = 'Y';
			if(banYN == 'Y') alert('금칙어가 포함되어 있습니다.');
			else{
				document.getElementById('comment').value = '';
				document.getElementById('writer_name').value = '';
				document.getElementById('pwd').value = '';
			}
			if(document.getElementById("delayYN")) if(banYN == 'N' && document.getElementById("delayYN").value == 'Y') alert('30초 후에 재작성이 가능합니다');
		} 
		else{
			alert(common_req.responseText);
			alert("잠시후 다시 시도해주세요.");
			commentbox('hide');
		}
	}
}

function chk_byte(chr){
	var c = escape(chr);
	if(c.length == 1) return 1;
	else if(c.indexOf("%u") != -1) return 2;
	else if(c.indexOf("%") != -1) return c.length/3;
}

function cut_str_byte(str , limit_length){
	var byte_size = 0;
	for(var i=0; i<str.length; i++){
		byte_size += chk_byte(str.charAt(i));
		if(byte_size > limit_length) break;
	}
	return str.substr(0 , i);
}

function byte_length(str){
	var resultSize = 0;
	if (str == null) return 0;
	for(var i=0; i<str.length; i++) resultSize += chk_byte(str.charAt(i));
	return resultSize;
}

function chk_byte_length(obj , limit_length){	
	if(byte_length(obj.value) > limit_length){
		alert('글자수 제한을 초과하였습니다.');
		obj.value = cut_str_byte(obj.value , limit_length);
		return false;
	}
	return true;
}

function trim(str){
	str = str.replace(/(^\s*)|(\s*$)/g, "");
	return str;
}

function click_input_tab(flag , seq){
	for(iLoop = 0;iLoop < 10;iLoop++){
		if(document.getElementById('input_tab' + iLoop)) document.getElementById('input_tab' + iLoop).style.display = 'none';
		if(document.getElementById('del_tab' + iLoop)) document.getElementById('del_tab' + iLoop).style.display = 'none';
	}

	if(flag == 'edit') document.getElementById('input_tab' + seq).style.display = '';
	else document.getElementById('del_tab' + seq).style.display = '';
}
