﻿//폼 선언
var v_FORM_NAME_BOARD_WRITE			= 'frmBoardForm';
var v_FORM_NAME_BOARD_SEARCH		= 'frmBoardSearch';

//DIV 선언
var v_L_BOX_BOARD_COMMENT_LIST			= 'L_BOX_BOARD_COMMENT_LIST';
var v_L_ERROR_BOX_BOARD_SEARCH_FORM		= 'L_ERROR_BOX_BOARD_SEARCH_FORM';

//URL 선언
var v_URL_BOARD_WRITE			= '/Community/Board/Board_Write.asp';
var v_URL_BOARD_PROC    		= '/Community/Board/Board_Proc.asp';
var v_URL_BOARD_LIST    		= '/Community/Board/Board_List.asp';
var v_URL_BOARD_VIEW    		= '/Community/Board/Board_View.asp';
var v_URL_BOARD_COMMENT_LIST    = '/Community/Board/_ajax_Comment_List.asp';
var v_URL_BOARD_COMMENT_PROC 	= '/Community/Board/_ajax_Comment_Proc.asp';
var v_URL_ENQUETE_LIST			= '/Community/Enquete/Enquete_List.asp';
var v_URL_ENQUETE_VIEW			= '/Community/Enquete/Enquete_View.asp';
var v_URL_VISUAL_LIST			= '/Community/Visual/Visual_List.asp';
var v_URL_VISUAL_VIEW			= '/Community/Visual/Visual_View.asp';
var v_URL_VISUAL_PROC    		= '/Community/Visual/Visual_Proc.asp';

//ALSER MSG
var v_ALERT_MSG_BOARD_DELETE	= '削除しますか？';
//ERROR MSG
var v_ERROR_MSG_SEARCH_001		= '<div class="resultArea">検索するキーワードを入力してください。</div>';
var v_ERROR_MSG_SEARCH_002		= '<div class="resultArea">error02</div>';

var v_ERROR_MSG_WRITE_001		= 'タイトルを入力ください。';
var v_ERROR_MSG_WRITE_002		= '内容を入力ください。';
var v_ERROR_MSG_WRITE_003		= 'イメージや動画URLを添付してください。';
var v_ERROR_MSG_WRITE_004		= '入力されたURLの形式が正しくありません。';
var v_ERROR_MSG_WRITE_005		= '書き込みは全角1000、半角2000文字以内です。'

var v_ERROR_MSG_COMMENT_WRITE_001		= '内容を入力ください。';
var v_ERROR_MSG_COMMENT_WRITE_002		= 'コメントは、全角250文字または、半角500文字まで入力可能です。';

var v_ERROR_MSG_SYSTEM_BOARD			= '処理中にエラーが発生しました。';
var v_ERROR_MSG_SYSTEM_COMMENT			= 'コメント処理中にエラーが発生しました。';
var v_ERROR_MSG_SYSTEM_CONTENT			= '処理中にエラーが発生しました。';
var v_ERROR_MSG_SYSTEM_WRITE			= '処理中にエラーが発生しました。';
var v_ERROR_MSG_SYSTEM_DELETE			= '処理中にエラーが発生しました。';
var v_ERROR_MSG_SYSTEM_BOARD_LIST		= '処理中にエラーが発生しました。';
var v_ERROR_MSG_SYSTEM_COMMENT_WRITE	= '処理中にエラーが発生しました。';
var v_ERROR_MSG_SYSTEM_COMMENT_DELETE	= '処理中にエラーが発生しました。';

var v_ERROR_MSG_SYSTEM_VISUAL_WRITE		= "処理中にエラーが発生しました。"

var v_ERROR_MSG_BLOCK_USER				= "投稿停止中のため、掲示板への投稿は行えません。"

var v_L_INPUT_DATA_MAXLENGTH_SEARCH_WORD	= 20;
var v_L_INPUT_DATA_MAXLENGTH_COMMENT		= 500;
var v_L_INPUT_DATA_MAXLENGTH_BOARD			= 2000;

var v_L_INPUT_DATA_MAXLENGTH_COMMENT_BUFFER;

var v_IS_WRITING_MODE	= false;

var BoardControls = {
	ViewBoardContent : function(v_CurrentUrl, v_BoardCode, v_BoardSort, v_Page, v_SearchColumn, v_SearchWord, v_BoardNo, v_TempCnt){	//clear
		var v_create_form_name	= 'BoardParameterForm';
		var v_create_element	= ''
		v_create_element	+= '<form name="' + v_create_form_name + '" method="get">';
		v_create_element	+= '<input type="hidden" name="board_cd"		value="' + v_BoardCode + '">';
		v_create_element	+= '<input type="hidden" name="board_sort"		value="' + v_BoardSort + '">';
		v_create_element	+= '<input type="hidden" name="Page"			value="' + v_Page + '">';
		v_create_element	+= '<input type="hidden" name="search_column"	value="' + v_SearchColumn + '">';
		v_create_element	+= '<input type="hidden" name="search_word"		value="' + v_SearchWord + '">';
		v_create_element	+= '<input type="hidden" name="write_no"		value="' + v_BoardNo + '">';
		v_create_element	+= '<input type="hidden" name="temp_count"		value="' + v_TempCnt + '">';
		v_create_element	+= '</form>';
		var v_isCreated	= CommonControls.AddCreateElements(v_L_BOX_COMMON_ELEMENT_CONTROL, v_create_element);
		if (v_isCreated){
			var objForm = document.forms[v_create_form_name];
			if (objForm){
				with(objForm){
					action = v_CurrentUrl;
					target	= '_self';
					submit();
				}	
			}else{
				alert(v_ERROR_MSG_SYSTEM_CONTENT);
			}
		}else{
			alert(v_ERROR_MSG_SYSTEM_CONTENT);
		}
	},
	ViewBoardList : function(v_CurrentUrl, v_BoardCode, v_BoardSort, v_Page, v_SearchColumn, v_SearchWord){	//clear
		var v_create_form_name	= 'BoardParameterForm';
		var v_create_element	= ''
		v_create_element	+= '<form name="' + v_create_form_name + '" method="get">';
		v_create_element	+= '<input type="hidden" name="board_cd"		value="' + v_BoardCode + '">';
		v_create_element	+= '<input type="hidden" name="board_sort"		value="' + v_BoardSort + '">';
		v_create_element	+= '<input type="hidden" name="Page"			value="' + v_Page + '">';
		v_create_element	+= '<input type="hidden" name="search_column"	value="' + v_SearchColumn + '">';
		v_create_element	+= '<input type="hidden" name="search_word"		value="' + v_SearchWord + '">';
		v_create_element	+= '</form>';
		var v_isCreated	= CommonControls.AddCreateElements(v_L_BOX_COMMON_ELEMENT_CONTROL, v_create_element);
		if (v_isCreated){
			var objForm = document.forms[v_create_form_name];
			if (objForm){
				with(objForm){
					action = v_CurrentUrl;
					method = 'get';
					target	= '_self';
					submit();
				}	
			}else{
				alert(v_ERROR_MSG_SYSTEM_BOARD_LIST);
			}
		}else{
			alert(v_ERROR_MSG_SYSTEM_BOARD_LIST);
		}
	},
	ValidateBoardWrite : function(v_ObjForm) {		//clear
		if (v_IS_WRITING_MODE){
			return false;
		}
		v_IS_WRITING_MODE	= true;
		if (v_ObjForm){
			with(v_ObjForm){
				if(v_ObjForm.proc_cd.value == 'I' || v_ObjForm.proc_cd.value == 'E'){ //삭제할 경우 지워지지 않음 D
					if(TextTrim(v_ObjForm.write_title.value).length == 0){
						BoardAlertMsg(v_ObjForm.write_title, v_ERROR_MSG_WRITE_001);
						return;
					}
					if(TextTrim(v_ObjForm.write_content.value).length == 0){
						BoardAlertMsg(v_ObjForm.write_content, v_ERROR_MSG_WRITE_002);
						return;
					}
					if(toByte(TextTrim(v_ObjForm.write_content.value)) > v_L_INPUT_DATA_MAXLENGTH_BOARD){
						BoardAlertMsg(v_ObjForm.write_content, v_ERROR_MSG_WRITE_005);
						return;
					}
				}
				var v_url	= v_URL_BOARD_PROC;
				CallxmlRequest(v_url, 'CALLFUNCTION', PROCESS_LAYER_COMMON, v_ObjForm);
			}
		}else{
			alert(v_ERROR_MSG_SYSTEM_BOARD);
		}
	},
	CallBackValidateWrite : function(v_result, v_write_no, v_temp_count, v_board_code, v_board_sort){		//clear
		var v_result		= parseInt(v_result);
		if(v_result == 0){
			if(v_board_code == 'TK02')
				document.location.href = v_URL_BOARD_LIST;
			else if(v_board_code == 'TDK04')
				document.location.href = v_URL_VISUAL_LIST;
		}
		else{
			alert(v_ERROR_MSG_SYSTEM_WRITE + v_result);
			v_IS_WRITING_MODE	= false;
		}
	},
	ValidateBoardDelete : function(v_BoardCode, v_BoardSort, v_Page, v_SearchColumn, v_SearchWord, v_WriteNo){
		if(confirm(v_ALERT_MSG_BOARD_DELETE)){
			var v_create_form_name	= 'frmBoardDelete';
			var v_create_element	= ''
			v_create_element	+= '<form name="' + v_create_form_name + '" method="post">';
			v_create_element	+= '<input type="hidden" name="board_cd"		value="' + v_BoardCode + '">';
			v_create_element	+= '<input type="hidden" name="board_sort"		value="' + v_BoardSort + '">';
			v_create_element	+= '<input type="hidden" name="Page"			value="' + v_Page + '">';
			v_create_element	+= '<input type="hidden" name="search_column"	value="' + v_SearchColumn + '">';
			v_create_element	+= '<input type="hidden" name="search_word"		value="' + v_SearchWord + '">';
			v_create_element	+= '<input type="hidden" name="write_no"		value="' + v_WriteNo + '">';
			v_create_element	+= '<input type="hidden" name="proc_cd"			value="D">';
			v_create_element	+= '</form>';
			var v_isCreated	= CommonControls.AddCreateElements(v_L_BOX_COMMON_ELEMENT_CONTROL, v_create_element);
			if (v_isCreated){
				var objForm = document.forms[v_create_form_name];
					if (objForm){
						BoardControls.ValidateBoardWrite(objForm);
					}
			}
		}
	},
	CallBackValidateDelete : function(v_result, v_BoardCode){
		var v_result		= parseInt(v_result);
		if(v_result != 0){
			alert(v_ERROR_MSG_SYSTEM_DELETE + v_BoardCode + v_result);
		}
		if(v_BoardCode == 'TK02')
			document.location.href = v_URL_BOARD_LIST;
		else
			document.location.href = v_URL_VISUAL_LIST;
	},
	ViewBoarCommnetList : function(v_write_no, v_url, v_layer, v_page){		//clear
		var v_create_form_name	= 'frmBoardCommentList';
		var v_create_element	= ''
		v_create_element	+= '<form name="' + v_create_form_name + '" method="post">';
		v_create_element	+= '<input type="hidden" name="Page"		value="' + v_page + '">';
		v_create_element	+= '<input type="hidden" name="write_no"	value="' + v_write_no + '">';
		v_create_element	+= '</form>';
		var v_isCreated	= CommonControls.AddCreateElements(v_L_BOX_COMMON_ELEMENT_CONTROL, v_create_element);
		if (v_isCreated){
			var objForm = document.forms[v_create_form_name];
			if (objForm){
				CallxmlRequest(v_url, 'TEXT', v_layer, objForm);
			}else{
				alert(v_ERROR_MSG_SYSTEM_COMMENT);
			}
		}else{
			alert(v_ERROR_MSG_SYSTEM_COMMENT);
		}
	},
	ValidateCommentWrite : function(v_ObjForm){ 
		if (v_ObjForm){
			if(v_ObjForm.proc_cd.value != 'D'){
				if(v_ObjForm.comment_text.value.length==0){
					BoardAlertMsg(v_ObjForm.comment_text, v_ERROR_MSG_COMMENT_WRITE_001);
					return false;
				}
				if(toByte(v_ObjForm.comment_text.value)  > v_L_INPUT_DATA_MAXLENGTH_COMMENT){
					BoardAlertMsg(v_ObjForm.comment_text, v_ERROR_MSG_COMMENT_WRITE_002);
					return false;
				}
			}
			var v_url	= v_URL_BOARD_COMMENT_PROC;
			CallxmlRequest(v_url, 'CALLFUNCTION', PROCESS_LAYER_COMMON, v_ObjForm);
		}else{
			alert(v_ERROR_MSG_SYSTEM_COMMENT);
		}
		return false;
	},
	ValidateCommentDelete : function(v_write_no, v_page, v_comment_no){
		var v_create_form_name	= 'frmCommentDelete';
		var v_create_element	= ''
		v_create_element	+= '<form name="' + v_create_form_name + '" method="post">';
		v_create_element	+= '<input type="hidden" name="write_no"		value="' + v_write_no + '">';
		v_create_element	+= '<input type="hidden" name="Page"			value="' + v_page + '">';
		v_create_element	+= '<input type="hidden" name="comment_no"		value="' + v_comment_no + '">';
		v_create_element	+= '<input type="hidden" name="proc_cd"			value="D">';
		v_create_element	+= '</form>';
		var v_isCreated	= CommonControls.AddCreateElements(v_L_BOX_COMMON_ELEMENT_CONTROL, v_create_element);
		if (v_isCreated){
			var objForm = document.forms[v_create_form_name];
				if (objForm){
					BoardControls.ValidateCommentWrite(objForm);
				}
		}
	},
	CallBackValidateCommentWrite : function(v_result, v_game_code, v_board_code, v_write_no, v_page, v_current_comment_count){
		var v_result	= parseInt(v_result);
		if(v_result == 0){
			var obj_comment_text	= document.getElementById('comment_text');
			var obj_comment_length	= document.getElementById('CommentTextLength');
			if(obj_comment_text)
				obj_comment_text.value = '';
			if(obj_comment_length)
				obj_comment_length.innerHTML = '0';
		}else{
			alert(v_ERROR_MSG_SYSTEM_COMMENT_WRITE + v_result);
		}
		BoardControls.ViewBoarCommnetList(v_write_no, v_URL_BOARD_COMMENT_LIST, v_L_BOX_BOARD_COMMENT_LIST, 1)
	},
	CallBackValidateCommentDelete : function(v_result, v_game_code, v_board_code, v_write_no, v_page, v_current_comment_count){
		var v_result	= parseInt(v_result);
		if(v_result != 0){
			alert(v_ERROR_MSG_SYSTEM_COMMENT_DELETE + v_result);
		}
		BoardControls.ViewBoarCommnetList(v_write_no, v_URL_BOARD_COMMENT_LIST, v_L_BOX_BOARD_COMMENT_LIST, v_page)
	},
	CallBackTest : function(v_alert){
		alert(v_alert);
	},
	CheckCommentLegnth : function(v_obj, v_length_id, v_length) {
		var buffer_text;
		if(v_obj){
			var current_legnth = toByte(v_obj.value);
			/*
			if(current_legnth > v_L_INPUT_DATA_MAXLENGTH_COMMENT){
				current_legnth	= v_L_INPUT_DATA_MAXLENGTH_COMMENT_BUFFER.length;
				v_obj.value	= v_L_INPUT_DATA_MAXLENGTH_COMMENT_BUFFER;
			}
			else{
				v_L_INPUT_DATA_MAXLENGTH_COMMENT_BUFFER = v_obj.value;
			}
			*/
			document.getElementById(v_length_id).innerHTML = current_legnth;;
		}
	},
	SetBlockUserMsg : function(){
		alert(v_ERROR_MSG_BLOCK_USER);
	}
}
var EnqueteControls = {
	ViewBoardContent : function(v_CurrentUrl, v_BoardCode, v_BoardSort, v_Page, v_SearchColumn, v_SearchWord, v_BoardNo){	//clear
		var v_create_form_name	= 'BoardParameterForm';
		var v_create_element	= ''
		v_create_element	+= '<form name="' + v_create_form_name + '" method="get">';
		v_create_element	+= '<input type="hidden" name="board_cd"		value="' + v_BoardCode + '">';
		v_create_element	+= '<input type="hidden" name="board_sort"		value="' + v_BoardSort + '">';
		v_create_element	+= '<input type="hidden" name="Page"			value="' + v_Page + '">';
		v_create_element	+= '<input type="hidden" name="search_column"	value="' + v_SearchColumn + '">';
		v_create_element	+= '<input type="hidden" name="search_word"		value="' + v_SearchWord + '">';
		v_create_element	+= '<input type="hidden" name="write_no"		value="' + v_BoardNo + '">';
		v_create_element	+= '</form>';
		var v_isCreated	= CommonControls.AddCreateElements(v_L_BOX_COMMON_ELEMENT_CONTROL, v_create_element);
		if (v_isCreated){
			var objForm = document.forms[v_create_form_name];
			if (objForm){
				with(objForm){
					action = v_CurrentUrl;
					target	= '_self';
					submit();
				}	
			}else{
				alert(v_ERROR_MSG_SYSTEM_CONTENT);
			}
		}else{
			alert(v_ERROR_MSG_SYSTEM_CONTENT);
		}
	}
}

var BoardSearchControls = {
	Validate : function(){	
		var objForm = document.forms[v_FORM_NAME_BOARD_SEARCH];
		if (objForm){
			with(objForm){
				var v_search_word	= search_word.value;
				var v_action_url	= action_url.value;
				if (isEmptyAll(v_search_word)){
					CommonErrorControls.AlertErrorMSGLayer(v_L_ERROR_BOX_BOARD_SEARCH_FORM, v_ERROR_MSG_SEARCH_001);
					return false;
				}else{
					action	= v_action_url;
					method	= 'get';
					target	= '_self';
					submit();
				}
			}
		}
		return false;
	}
}

function BoardAlertMsg(v_obj, v_msg)
{
	alert(v_msg);
	v_obj.focus();
}
// 비주얼 게시판
var VisualControls = {
	ValidateBoardWrite : function(v_ObjForm) {		//clear
		if (v_IS_WRITING_MODE){
			return false;
		}
		v_IS_WRITING_MODE	= true;	
		if (v_ObjForm){
			with(v_ObjForm){
				if(v_ObjForm.proc_cd.value == 'I' || v_ObjForm.proc_cd.value == 'E'){ //삭제할 경우 지워지지 않음 D
					if (board_config_attachfile.value.toLowerCase() == "true"){
						//업로드 된 파일 전체 선택
						AttachFileControls.SelectAttachedFileList('frmBoardForm');
					}
					if(TextTrim(v_ObjForm.write_title.value).length == 0){
						BoardAlertMsg(v_ObjForm.write_title, v_ERROR_MSG_WRITE_001);
						return;
					}
					if(TextTrim(v_ObjForm.write_content.value).length == 0){
						BoardAlertMsg(v_ObjForm.write_content, v_ERROR_MSG_WRITE_002);
						return;
					}
					if(v_ObjForm.attached_file_list_select.options.length == 0 && TextTrim(v_ObjForm.write_movie.value).length == 0){
						alert(v_ERROR_MSG_WRITE_003);
						return;
					}
					if(TextTrim(v_ObjForm.write_movie.value).length > 0){
						if (!v_ObjForm.write_movie.value.match(/<object|object>/i)){
							BoardAlertMsg(v_ObjForm.write_movie, v_ERROR_MSG_WRITE_004);
							return;
						}
					}
				}
				var v_url	= v_URL_VISUAL_PROC;
				method		= 'post';
				encoding	= v_FORM_ENCODING_TYPE_FORM_URLENCODE;
				CallxmlRequest(v_url, 'CALLFUNCTION', PROCESS_LAYER_COMMON, v_ObjForm);
			}
		}else{
			alert(v_ERROR_MSG_SYSTEM_BOARD);
		}
	},
	CallBackValidateWrite : function(v_result, v_write_no, v_temp_count, v_board_code, v_board_sort){		//clear
		var v_result		= parseInt(v_result);
		if(v_result == 0){
			document.location.href = v_URL_VISUAL_LIST;
		}
		else{
			alert(v_ERROR_MSG_SYSTEM_VISUAL_WRITE + v_result);
			v_IS_WRITING_MODE	= false;
		}
	},
	ViewBoardContent : function(v_CurrentUrl, v_BoardCode, v_BoardSort, v_Page, v_SearchColumn, v_SearchWord, v_BoardNo){	//clear
		var v_create_form_name	= 'BoardParameterForm';
		var v_create_element	= ''
		v_create_element	+= '<form name="' + v_create_form_name + '" method="get">';
		v_create_element	+= '<input type="hidden" name="board_cd"		value="' + v_BoardCode + '">';
		v_create_element	+= '<input type="hidden" name="board_sort"		value="' + v_BoardSort + '">';
		v_create_element	+= '<input type="hidden" name="Page"			value="' + v_Page + '">';
		v_create_element	+= '<input type="hidden" name="search_column"	value="' + v_SearchColumn + '">';
		v_create_element	+= '<input type="hidden" name="search_word"		value="' + v_SearchWord + '">';
		v_create_element	+= '<input type="hidden" name="write_no"		value="' + v_BoardNo + '">';
		v_create_element	+= '</form>';
		var v_isCreated	= CommonControls.AddCreateElements(v_L_BOX_COMMON_ELEMENT_CONTROL, v_create_element);
		if (v_isCreated){
			var objForm = document.forms[v_create_form_name];
			if (objForm){
				with(objForm){
					action = v_CurrentUrl;
					target	= '_self';
					submit();
				}	
			}else{
				alert(v_ERROR_MSG_SYSTEM_CONTENT);
			}
		}else{
			alert(v_ERROR_MSG_SYSTEM_CONTENT);
		}
	},
	ViewAttachecImageFile : function (v_game_code, v_img_url, v_width, v_height){
		if (v_img_url == ''){	return;	}
		LPlib.toggleTroubleElements(false);
		var v_img_object	= '';
		v_img_object		+= '<img src="' + v_img_url + '" style="cursor:pointer;border:3px solid #000;" ';
		v_img_object		+= 'onclick="SetObjectStyle.NoneDisplay(v_L_BOX_POPUP_COMMON);CommonControls.CloseBlockLayer(v_L_BOX_POPUP_COMMON, \'\', \'\', \'\');LPlib.toggleTroubleElements(true);" ';
		v_img_object		+= 'title="画像をクリックすると閉じることができます。">';

		CommonControls.OpenBlockLayer(v_L_BOX_POPUP_COMMON, '', '', '');
		SetObjectStyle.SetCenterPosition(v_L_BOX_POPUP_COMMON, v_width, v_height);
		SetObjectStyle.SetinnerHTML(v_L_BOX_POPUP_COMMON, v_img_object);
		SetObjectStyle.Display(v_L_BOX_POPUP_COMMON);
	}
}

function TextTrim(v_str){
	var strPattern = /(^\s*)|(\s*$)/g;
	
	v_str = v_str.replace(strPattern, "");
	
	return v_str;
}

function showPreview(v_layer, v_content, v_hit_cnt, v_comment_cnt, v_list_number, v_tmp_height, event){
  if(v_content)
  {
    var text;
    text = '';
    
	text += '<p id="comm_pop_header"></p>'
	text += '<div id="comm_pop">'
	text += '<div class="wrapper">';
	text += '	<ul class="data">';
	text += '		<li class="viewer">閲覧数' + v_hit_cnt + '</li>';
	text += '		<li class="comment">コメント数' + v_comment_cnt + '</li>';
	text += '	</ul>';
	text += '	<p style="clear:left;"></p>';
	text += '	<p class="border"><img src="' + _IMG_URL + '/tekki/2009/subpage/community/common/popup_border.gif" width="353" height="2" /></p>';
	text += '	<p class="text">' + v_content + '</p>';
	text += '</div>';
	text += '<div height:6px;></div>';
	text += '</div>';
	text += '<p id="comm_pop_footer"></p>'

    document.getElementById(v_layer).innerHTML=text;

	var v_user_agent	= window.navigator.userAgent.toLowerCase();
	var tmpY;
	if (v_user_agent.indexOf('msie 6.0') > 0 )
		var tmpY = 57;
	else
		var tmpY = 0;
	
    var x = (document.body.clientWidth/2) - 150 + 'px';
    var y = 483 + (v_list_number*27) + tmpY - v_tmp_height + 'px';

	document.getElementById(v_layer).style.left	= x;
	document.getElementById(v_layer).style.top	= y;
	document.getElementById(v_layer).style.visibility = 'visible';
  }
}
function hidePreview(v_layer){ 
	document.getElementById(v_layer).innerHTML='';
	document.getElementById(v_layer).style.visibility = 'hidden'; 
}

function BoardBtnMore(){
	var v_Board_Url = _WEB_URL_TEKKI + '/Community/Board/Board_List.asp';
	window.location.href = v_Board_Url;
}