var change_what = '';

function ListTableCreate(formName, element, listXml)
{
    var btype = $(formName).btype.value;

    var nds;
    var objCol;
    
    var root = listXml.documentElement;
    var xml_view = document.getElementById(element);
    var rowLimitValue = "";    // OO개씩보기에서 사용

    //-----------------------------------------------------------------------------
    // 리스트형
    //-----------------------------------------------------------------------------
    if(btype == 'L')
    {

        xml_view.innerHTML  =   "";
        var objTable        =   document.createElement("table");
        objTable.className  =   "board_list";
        var page            =   $(formName).page.value;
        var objColGroup     =   document.createElement("colgroup");
        var list_width  = ["49%","15%","12%","7%","7%"];
        var imgListHtml = "";
        var objThead   = document.createElement("thead");
        var objTheadTr = document.createElement("tr");
        var objTheadTrTh;
        
        var LIST_WIDTH = eval(list_width);
        for(var i = 0;i < LIST_WIDTH.length; i++)
        {   
            objCol = document.createElement("col");
            objCol.style.width = LIST_WIDTH[i];
            objColGroup.appendChild(objCol);
        }
        objColGroup.appendChild(objCol);
        objTable.appendChild(objColGroup);
        
        //리스트형 게시판 타이틀, 각 게시판별 설정
        var list_title  =   [ message["board.title"]
                            , message["board.write_date"]
                            , message["board.view_cnt_short"]
                            , message["board.scrap"]
                            , message["board.download"] ];
        var LIST_TITLE  = eval(list_title);
        for(var i = 0;i < LIST_TITLE.length; i++)
        {
            objTheadTrTh = document.createElement("th");
            objTheadTrTh.innerHTML = LIST_TITLE[i];
            if(i == 0)
            {
                objTheadTrTh.className = "first";
            }
            objTheadTr.appendChild(objTheadTrTh);
        }
        objThead.appendChild(objTheadTr);
        objTable.appendChild(objThead);

        var objTBody = document.createElement("tbody");
        
        //global variable
        var global_vars = ["TOTAL_COUNT", "ROW_LIMIT", "GROUP_LIMIT", "listIndex"];
        var GLOBAL_VARS = eval(global_vars);
        
        //row data keys information, xml에서 가져올 컬럼 명들을 설정
        var elements_strs = ["CATEGORY", "CATEGORY_NM", "TITLE", "WRITE_DATE", "VIEW_CNT", "RECMD_CNT", "SCRAP_CNT", "DWNLD_CNT", "PLAY_CNT", "VOLTA", "SEQ", "TYPE", "ATTNAME", "MEDIA_PATH", "SNAPSHOT_IMG", "THUMBNAIL_IMG"];
        var ELEMENTS_STRS = eval(elements_strs);
        
        if(root.hasChildNodes())
        {
            nds = root.childNodes;
            var list_item = listXml.getElementsByTagName("list");
            for(var i = 0;i < list_item.length; i++) 
            {
                var param = new String();
                if(i == 0) 
                {
                    for(var j=0;j < GLOBAL_VARS.length;j++)
                    {
                        if(root.getElementsByTagName(GLOBAL_VARS[j]).length > 0)
                        {
                            param[GLOBAL_VARS[j]] = root.getElementsByTagName(GLOBAL_VARS[j])[0].firstChild.nodeValue;
                        }
                        else 
                        {
                            param[GLOBAL_VARS[j]]= GLOBAL_VARS[j];
                        }
                    }
                    rowLimitValue = param["ROW_LIMIT"];
                    var pagingHtml = PagingCreate('Board.page', 'board_list', ACTION_URL, 'list_form', param["TOTAL_COUNT"],page,param["ROW_LIMIT"], param["GROUP_LIMIT"], 'String');
                    $('board_list_paging').innerHTML = pagingHtml;
                    param["listIndex"] = param["TOTAL_COUNT"] - ((page - 1) * param["ROW_LIMIT"]) - i;
                }

                var xmlelem = new String();
                for(var k = 0; k < ELEMENTS_STRS.length; k++)
                {               
                    if(list_item[i].getElementsByTagName(ELEMENTS_STRS[k]).length > 0)
                    { 
                        xmlelem[ELEMENTS_STRS[k]] = list_item[i].getElementsByTagName(ELEMENTS_STRS[k])[0].firstChild.nodeValue;
                    }
                    else 
                    {
                        xmlelem[ELEMENTS_STRS[k]] = getdefaultval(ELEMENTS_STRS[k]);
                    }
                }
                    
                var objTr = document.createElement("TR");
                var objTd;
                
                var category        =   trim(xmlelem["CATEGORY"]);
                var categoryName    =   trim(xmlelem["CATEGORY_NM"]);
                var title           =   trim(xmlelem["TITLE"]);
                var writeDate       =   trim(xmlelem["WRITE_DATE"]);
                var viewCnt         =   trim(xmlelem["VIEW_CNT"]);
                var recmdCnt        =   trim(xmlelem["RECMD_CNT"]);
                var scrapCnt        =   trim(xmlelem["SCRAP_CNT"]);
                var dwnldCnt        =   trim(xmlelem["DWNLD_CNT"]);
                var playCnt         =   trim(xmlelem["PLAY_CNT"]);
                var volta           =   trim(xmlelem["VOLTA"]);
                var seq             =   trim(xmlelem["SEQ"]);
                var type            =   trim(xmlelem["TYPE"]);
                var attName         =   trim(xmlelem["ATTNAME"]);
                var mediaPath       =   trim(xmlelem["MEDIA_PATH"]);
                var snapshotImg     =   trim(xmlelem["SNAPSHOT_IMG"]);
                var thumbnailImg     =   trim(xmlelem["THUMBNAIL_IMG"]);
                
                if(i == 0)
                {
                    objTr.className = "first";
                }
                else
                {
                    objTr.className = "";
                }

                objTd = document.createElement("TD");
                objTd.className = "left";
                var inHtml  = "<a href='javascript:void()' onClick=\"showMediaPlayer('" + seq + "', '" + category + "', '610', '562'); return false;\">";
                inHtml += title;
                if(type == 'RADIO')
                {
                    inHtml += "<img src='/ysrimg/common/ico_radio.gif' width='15' height='16'/>";
                }
                else if(type == 'TV')
                {
                    inHtml += "<img src='/ysrimg/common/ico_movie.gif' width='15' height='16'/>";
                }
                inHtml += "</a>";
                inHtml += "<input type='hidden' name='clipTag0' id='clipTag"+i+"' value='"+mediaPath+"'/>";
                objTd.innerHTML = inHtml;
                objTr.appendChild(objTd);

                objTd = document.createElement("TD");
                objTd.innerHTML = writeDate;
                objTr.appendChild(objTd);

                objTd = document.createElement("TD");
                objTd.innerHTML = playCnt;
                objTr.appendChild(objTd);

                objTd = document.createElement("TD");
                if(type == 'RADIO')
                {
                    objTd = document.createElement("TD");
                    objTd.innerHTML = "-";
                    objTr.appendChild(objTd);
                    objTd = document.createElement("TD");
                    objTd.innerHTML = dwnldCnt;
                    objTr.appendChild(objTd);
                }
                else if(type == 'TV')
                {
                    objTd = document.createElement("TD");
                    objTd.innerHTML = dwnldCnt;
                    objTr.appendChild(objTd);
                    objTd = document.createElement("TD");
                    objTd.innerHTML = "-";
                    objTr.appendChild(objTd);
                }
                objTr.appendChild(objTd);

                objTBody.appendChild(objTr);
            }
        } else {
            var objTr = document.createElement("TR");
            var objTd = document.createElement("td");
    
            if($(formName).word.value != "") 
            {
                objTd.innerHTML = message["board.list.search.empty"];
            } 
            else 
            {
                objTd.innerHTML = message["board.list.empty"];
            }
            objTd.className = "nodata";
            objTr.appendChild(objTd);
            objTd.setAttribute("colSpan", 10);
            objTBody.appendChild(objTr);
            var pagingHtml = PagingCreate('Board.page', 'board_list', ACTION_URL, 'list_form', 1, page, 10, 10, 'String');
            $('board_list_paging').innerHTML = pagingHtml;
        }

        objTable.appendChild(objTBody);
        objTable.cellPadding="0";
        objTable.border="0";
        objTable.className = 'board_list';
        xml_view.appendChild(objTable);
        xml_view.className = "board_list";
        if(root.hasChildNodes())
        {
            TooltipManager.init("tooltip");
        }
        
        if(change_what == 'btype')
        {
            var inHtml = "";
            inHtml += " <legend></legend>";
            inHtml += "     <select id='rowLimit' name='rowLimit' onchange=\"Board.rowLimitChange('" + ACTION_URL + "', 'list_form', 'board_list');\">";
            if(rowLimitValue>=10 && rowLimitValue<20){
            inHtml += "         <option value='12' selected>" + message['board.list.print12'] + "</option>";
            } else {
            inHtml += "         <option value='12'>" + message['board.list.print12'] + "</option>";
            }
            if(rowLimitValue>=20 && rowLimitValue<40){
            inHtml += "         <option value='24' selected>" + message['board.list.print24'] + "</option>";
            } else {
            inHtml += "         <option value='24'>" + message['board.list.print24'] + "</option>";
            }
            if(rowLimitValue>=30 && rowLimitValue<50){
            inHtml += "         <option value='36' selected>" + message['board.list.print36'] + "</option>";
            } else {
            inHtml += "         <option value='36'>" + message['board.list.print36'] + "</option>";
            }
            if(rowLimitValue>=40 && rowLimitValue<60){
            inHtml += "         <option value='48' selected>" + message['board.list.print48'] + "</option>";
            } else {
            inHtml += "         <option value='48'>" + message['board.list.print48'] + "</option>";
            }
            inHtml += "     </select>";
            $('div_row_limit').innerHTML = inHtml;
        }
    }
    //-----------------------------------------------------------------------------
    // 블로그형
    //-----------------------------------------------------------------------------
    else if(btype == 'B')
    {
        xml_view.innerHTML  =   "";
        var page            =   $(formName).page.value;
        var imgListHtml = "";
        
        //global variable
        var global_vars = ["TOTAL_COUNT", "ROW_LIMIT", "GROUP_LIMIT", "listIndex"];
        var GLOBAL_VARS = eval(global_vars);
        
        //row data keys information, xml에서 가져올 컬럼 명들을 설정
        var elements_strs = ["CATEGORY", "CATEGORY_NM", "TITLE", "WRITE_DATE", "VIEW_CNT", "RECMD_CNT", "SCRAP_CNT", "DWNLD_CNT", "PLAY_CNT", "VOLTA", "SEQ", "TYPE", "ATTNAME", "MEDIA_PATH", "SNAPSHOT_IMG", "THUMBNAIL_IMG"];
        var ELEMENTS_STRS = eval(elements_strs);

        var objUl = document.createElement("ul");
        objUl.className = "type_02";

        if(root.hasChildNodes())
        {
            nds = root.childNodes;
            var list_item = listXml.getElementsByTagName("list");
            for(var i = 0;i < list_item.length; i++) 
            {
                var param = new String();
                if(i == 0) 
                {
                    for(var j=0;j < GLOBAL_VARS.length;j++)
                    {
                        if(root.getElementsByTagName(GLOBAL_VARS[j]).length > 0)
                        {
                            param[GLOBAL_VARS[j]] = root.getElementsByTagName(GLOBAL_VARS[j])[0].firstChild.nodeValue;
                        }
                        else 
                        {
                            param[GLOBAL_VARS[j]]= GLOBAL_VARS[j];
                        }
                    }
                    rowLimitValue = param["ROW_LIMIT"];
                    var pagingHtml = PagingCreate('Board.page', 'board_list', ACTION_URL, 'list_form', param["TOTAL_COUNT"],page,param["ROW_LIMIT"], param["GROUP_LIMIT"], 'String');
                    $('board_list_paging').innerHTML = pagingHtml;
                    param["listIndex"] = param["TOTAL_COUNT"] - ((page - 1) * param["ROW_LIMIT"]) - i;
                }

                var xmlelem = new String();
                for(var k = 0; k < ELEMENTS_STRS.length; k++)
                {               
                    if(list_item[i].getElementsByTagName(ELEMENTS_STRS[k]).length > 0)
                    { 
                        xmlelem[ELEMENTS_STRS[k]] = list_item[i].getElementsByTagName(ELEMENTS_STRS[k])[0].firstChild.nodeValue;
                    }
                    else 
                    {
                        xmlelem[ELEMENTS_STRS[k]] = getdefaultval(ELEMENTS_STRS[k]);
                    }
                }

                var category        =   trim(xmlelem["CATEGORY"]);
                var categoryName    =   trim(xmlelem["CATEGORY_NM"]);
                var title           =   trim(xmlelem["TITLE"]);
                if(calculate_msglen(title)>20){
                    title = assert_msglen(title, '20');
                }
                var writeDate       =   trim(xmlelem["WRITE_DATE"]);
                var viewCnt         =   trim(xmlelem["VIEW_CNT"]);
                var recmdCnt        =   trim(xmlelem["RECMD_CNT"]);
                var playCnt        =   trim(xmlelem["PLAY_CNT"]);
                var scrapCnt        =   trim(xmlelem["SCRAP_CNT"]);
                var dwnldCnt        =   trim(xmlelem["DWNLD_CNT"]);
                var volta           =   trim(xmlelem["VOLTA"]);
                var seq             =   trim(xmlelem["SEQ"]);
                var type            =   trim(xmlelem["TYPE"]);
                var attName         =   trim(xmlelem["ATTNAME"]);
                var mediaPath       =   trim(xmlelem["MEDIA_PATH"]);
                var snapshotImg     =   trim(xmlelem["SNAPSHOT_IMG"]);
                var thumbnailImg     =   trim(xmlelem["THUMBNAIL_IMG"]);
                
                var objLi = document.createElement("li");
                if(i == 0)
                {
                    objLi.className = 'first';
                }
                var inHtml   = "<div class='img'>";
                    inHtml  += "    <a href='javascript:void()' onClick=\"showMediaPlayer('" + seq + "', '" + category + "', '610', '562'); return false;\">";
                    if (thumbnailImg != "" && thumbnailImg != "0")
                    {
                        inHtml  += "<img src='" + thumbnailImg + "' alt='' width='153' height='114'/>";
                    }
                    else
                    {
                        inHtml += "<img src=\"/ysrimg/common/noimg_07.gif\" />";
                    }
                    inHtml  += "</a>";
                    inHtml  += "    <p class='title'>";
                    inHtml  += "        <a href='javascript:void()' onClick=\"showMediaPlayer('" + seq + "', '" + category + "', '610', '562'); return false;\">";
                    inHtml  +=          title;                    
                    if(type == 'RADIO')
                    {
                        inHtml += "<img src='/ysrimg/common/ico_radio.gif' width='15' height='16'/>";
                    }
                    else if(type == 'TV')
                    {
                        inHtml += "<img src='/ysrimg/common/ico_movie.gif' width='15' height='16'/>";
                    }
                    inHtml  += "        </a>";                    
                    inHtml += "<input type='hidden' name='clipTag0' id='clipTag"+i+"' value='"+mediaPath+"'/>";
                    inHtml  += "    </p>";
                    inHtml  += "</div>";
                    inHtml  += "<div class='info_thum'>";
                    inHtml  += "    <span>" + writeDate + "</span>";
                    inHtml  += "    <span>" + message["board.view_cnt_short"] + ": " + playCnt + "</span><br/>";
                    if(type == 'RADIO')
                    {
                        inHtml += "    <span>" + message["broadcast.scrap"] + ": - </span>";
                        inHtml += " <span>" + message["board.download"] + ": " + dwnldCnt + "</span>";
                    }
                    else if(type == 'TV')
                    {
                        inHtml += " <span>" + message["broadcast.scrap"] + ": " + dwnldCnt + "</span>";
                        inHtml += "    <span>" + message["board.download"] + " - </span>";
                    }
                    inHtml  += "</div>";
                objLi.innerHTML = inHtml;
                objUl.appendChild(objLi);
            }
            
            xml_view.appendChild(objUl);
            
            TooltipManager.init("tooltip");
        // 데이터가 없을 경우
        }else{
            var error_msg = "";
            if($(formName).word.value != "") 
            {
                error_msg = message["board.list.search.empty"];
            } 
            else 
            {
                error_msg = message["board.list.empty"];
            }
            
            if(imgListHtml == ""){
                imgListHtml = "<ul class='type_01'><li class='nodata'>" + error_msg + "</li></ul>";
            }else{
                imgListHtml = "<ul class='type_01'>" + imgListHtml + "</ul>";
            }
            $('board_list').innerHTML = imgListHtml;
            var pagingHtml = PagingCreate('Board.page', 'board_list', ACTION_URL, 'list_form', 1, page, 10, 10, 'String');
            $('board_list_paging').innerHTML = pagingHtml; 
        }

        if(change_what == 'btype')
        {
            var inHtml = "";
            inHtml += " <legend></legend>";
            inHtml += "     <select id='rowLimit' name='rowLimit' onchange=\"Board.rowLimitChange('" + ACTION_URL + "', 'list_form', 'board_list');\">";
            if(rowLimitValue>=10 && rowLimitValue<20){
            inHtml += "         <option value='12' selected>" + message['board.list.print12'] + "</option>";
            } else {
            inHtml += "         <option value='12'>" + message['board.list.print12'] + "</option>";
            }
            if(rowLimitValue>=20 && rowLimitValue<40){
            inHtml += "         <option value='24' selected>" + message['board.list.print24'] + "</option>";
            } else {
            inHtml += "         <option value='24'>" + message['board.list.print24'] + "</option>";
            }
            if(rowLimitValue>=30 && rowLimitValue<50){
            inHtml += "         <option value='36' selected>" + message['board.list.print36'] + "</option>";
            } else {
            inHtml += "         <option value='36'>" + message['board.list.print36'] + "</option>";
            }
            if(rowLimitValue>=40 && rowLimitValue<60){
            inHtml += "         <option value='48' selected>" + message['board.list.print48'] + "</option>";
            } else {
            inHtml += "         <option value='48'>" + message['board.list.print48'] + "</option>";
            }
            inHtml += "     </select>";
            $('div_row_limit').innerHTML = inHtml;
        }
    }

}

function ViewListTableCreate(formName, element, listXml) {
	var root = listXml.documentElement;
	
	var xml_view = document.getElementById(element); //innerHTML 영역
	xml_view.innerHTML="";
	
	var objTable = document.createElement("table"); // table 생성
	objTable.cellPadding="0";
	objTable.border="0";
	
	objTable.className = 'board_list first';
	
	var page = $(formName).page.value;
	var btype = $(formName).btype.value;
	var strTid = $(formName).tid.value;
	var rowLimit, groupLimit, totalCount;
	
	var objCaption = document.createElement("caption");
	objTable.appendChild(objCaption);
	
	var objColGroup = document.createElement("colgroup");
	var objCol;
	
	objCol = document.createElement("col");
	objColGroup.appendChild(objCol);
	objCol = document.createElement("col");
	objCol.style.width = "23%";
	objColGroup.appendChild(objCol);
	objCol = document.createElement("col");
	objCol.style.width = "11%";
	objColGroup.appendChild(objCol);
	objCol = document.createElement("col");
	objCol.style.width = "6%";
	objColGroup.appendChild(objCol);
	objCol = document.createElement("col");
	objCol.style.width = "6%";
	objColGroup.appendChild(objCol);
	objTable.appendChild(objColGroup);
	
	var objTbody = document.createElement("tbody");
	
	var list_item = listXml.getElementsByTagName("list"); //xml 리스트 데이타
	var nds;
	if(root.hasChildNodes()){
		nds = root.childNodes;
		
		for(var i = 0; i < list_item.length; i++) { //list 생성
			var objTr = document.createElement("tr"); //tr 생성
			if(i == 0) {
				objTr.className = "first";
				
				if(root.getElementsByTagName("TOTAL_COUNT").length > 0) totalCount = root.getElementsByTagName("TOTAL_COUNT")[0].firstChild.nodeValue;
				else totalCount = "0";
				
				if(root.getElementsByTagName("ROW_LIMIT").length > 0) rowLimit = root.getElementsByTagName("ROW_LIMIT")[0].firstChild.nodeValue;
				else rowLimit = "";
				
				if(root.getElementsByTagName("GROUP_LIMIT").length > 0) groupLimit = root.getElementsByTagName("GROUP_LIMIT")[0].firstChild.nodeValue;
				else groupLimit = "";
				
				var pagingHtml = ViewListPagingCreate('Board.view_page', 'board_list', ACTION_URL, 'list_form', totalCount, page, rowLimit, groupLimit, 'String');
				$('board_list_paging').innerHTML = pagingHtml;
			}
			
			var listMyLevel; //등급
			if(list_item[i].getElementsByTagName("MY_LEVEL").length > 0) listMyLevel = list_item[i].getElementsByTagName("MY_LEVEL")[0].firstChild.nodeValue;
			else listMyLevel = "";
			
			var listAlwayFg; //공지여부
			if(list_item[i].getElementsByTagName("ALWAY_FG").length > 0) listAlwayFg = list_item[i].getElementsByTagName("ALWAY_FG")[0].firstChild.nodeValue;
			else listAlwayFg = "";
			
			var listBoardLevel; //게시글 레벨
			if(list_item[i].getElementsByTagName("BOARD_LEVEL").length > 0) listBoardLevel = list_item[i].getElementsByTagName("BOARD_LEVEL")[0].firstChild.nodeValue;
			else listBoardLevel = 0;
			
			var listDeleteFlag; //삭제여부
			if(list_item[i].getElementsByTagName("DELETE_FG").length > 0) listDeleteFlag = list_item[i].getElementsByTagName("DELETE_FG")[0].firstChild.nodeValue;
			else listDeleteFlag = 0;
			
			var listOpenFg; //게시글 공개 여부
			if(list_item[i].getElementsByTagName("OPEN_FG").length > 0) listOpenFg = list_item[i].getElementsByTagName("OPEN_FG")[0].firstChild.nodeValue;
			else listOpenFg = "";
			//if(listOpenFg == "N") strBlank += "<img src='/images/icon/lock.gif'>";
			
			var listUserId; //사용자 아이디(조건 더 필요)
			if(list_item[i].getElementsByTagName("USER_ID").length > 0) listUserId = list_item[i].getElementsByTagName("USER_ID")[0].firstChild.nodeValue;
			else listUserId = "";
			
			var listChoiceFg; //공지&베스트 여부
			if(list_item[i].getElementsByTagName("CHOICE_FG").length > 0) listChoiceFg = list_item[i].getElementsByTagName("CHOICE_FG")[0].firstChild.nodeValue;
			else listChoiceFg = "";
			
			var listAnonymous; //익명 여부
			if(list_item[i].getElementsByTagName("ANONYMOUS").length > 0) listAnonymous = list_item[i].getElementsByTagName("ANONYMOUS")[0].firstChild.nodeValue;
			else listAnonymous = "";
			if(listAnonymous == "Y"){
				strBlank = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + message["board.anonymous"];
			}else{
				strBlank = "";
			}
			
			var listNickName; //닉네임
			if(list_item[i].getElementsByTagName("NICKNAME").length > 0) listNickName = list_item[i].getElementsByTagName("NICKNAME")[0].firstChild.nodeValue;
			else listNickName = "";
			
			var listUserName // 사용자 명
			if(list_item[i].getElementsByTagName("USER_NAME").length > 0) listUserName = list_item[i].getElementsByTagName("USER_NAME")[0].firstChild.nodeValue;
			else listUserName = "";
			
			var listLeaveFlg; //이메일 여부
			if(list_item[i].getElementsByTagName("EMAIL_ADDRESS").length > 0) listLeaveFlg = "N"; 
			else listLeaveFlg = "Y";
			
			var listModifyDate; //작성일
			if(list_item[i].getElementsByTagName("MODIFY_DATE").length > 0) listModifyDate = list_item[i].getElementsByTagName("MODIFY_DATE")[0].firstChild.nodeValue;
			else listModifyDate = "";
			if(listModifyDate.length > 10)
				listModifyDate = listModifyDate.substring(0,10);
				
			var listViewCnt; //조회수
			if(list_item[i].getElementsByTagName("VIEW_CNT").length > 0) listViewCnt = list_item[i].getElementsByTagName("VIEW_CNT")[0].firstChild.nodeValue;
			else listViewCnt = 0;
			
			var listRecmdCnt; //추천수
			if(list_item[i].getElementsByTagName("RECMD_CNT").length > 0) listRecmdCnt = list_item[i].getElementsByTagName("RECMD_CNT")[0].firstChild.nodeValue;
			else listRecmdCnt = 0;
			
			var listCmtCnt; //덧글수
			if(list_item[i].getElementsByTagName("CMT_CNT").length > 0) listCmtCnt = list_item[i].getElementsByTagName("CMT_CNT")[0].firstChild.nodeValue;
			else listCmtCnt = 0;
			
			var listSeq; //게시글번호
			if(list_item[i].getElementsByTagName("SEQ").length > 0) listSeq = list_item[i].getElementsByTagName("SEQ")[0].firstChild.nodeValue;
			else listSeq = 0;
			
			var listTitle; //제목
			if(list_item[i].getElementsByTagName("TITLE").length > 0) listTitle = list_item[i].getElementsByTagName("TITLE")[0].firstChild.nodeValue;
			else listTitle = 0;
			
			var objTd = document.createElement("td"); //제목 td 생성
			objTd.className = 'left';
			objTd.innerHTML = makeTitleLinkStr2(list_item, listDeleteFlag, listOpenFg, listChoiceFg, listCmtCnt, listUserId, listSeq, listTitle, listAlwayFg, userId, adminYn);
			objTr.appendChild(objTd);
			
			
			//tooltip 생성
			var objSpan = document.createElement("span"); 
			objSpan.style.cursor = "pointer";
			objSpan.innerHTML = levelImgStr2(listMyLevel, listUserId) + listNickName;
			objSpan.className = "tooltip html_" + listUserName;
			var objDiv = document.createElement("div");
			objDiv.style.display = "none";
			objDiv.id = listUserName;
			
			objDiv.innerHTML = setNameCardDiv2(listUserId, listNickName, listUserName, listLeaveFlg);

			//등로자 td 생성
			objTd = document.createElement("td"); 
			objTd.className = 'name';
			objTd.innerHTML = strBlank;
			if(listAnonymous != "Y"){
				objTd.appendChild(objSpan);
			}
			objTd.appendChild(objDiv);
			objTr.appendChild(objTd);
			
			//작성일 td 생성
			objTd = document.createElement("td"); 
			objTd.innerHTML = listModifyDate;
			objTr.appendChild(objTd);
			
			//조회 td 생성
			objTd = document.createElement("td"); 
			objTd.innerHTML = listViewCnt;
			objTr.appendChild(objTd);
			
			//추천 td 생성
			objTd = document.createElement("td"); 
			objTd.innerHTML = listRecmdCnt;
			objTr.appendChild(objTd);
			
			objTbody.appendChild(objTr);
		}
	}
	objTable.appendChild(objTbody);
	
	//var ttt = document.createElement("div");
	//ttt.appendChild(objTable);
	//alert(ttt.innerHTML);
	
	xml_view.appendChild(objTable);
	
	if(root.hasChildNodes()){
		TooltipManager.init("tooltip");
	}
}

function CommentListTableCreate(formName, element, listXml)
{
    var root = listXml.documentElement;
    var xml_view = document.getElementById(element); //innerHTML 영역
    xml_view.innerHTML="";
    
    var list_item = listXml.getElementsByTagName("list"); //xml 리스트 데이타
    var nds;
    var imgCnt = 1;
    var depthCnt = 1;
    var replCnt = 0;
    if(root.hasChildNodes()){
        nds = root.childNodes;
        
        close_emo(); //이모티콘 레이어 숨김
        
        for(var i = 0; i < list_item.length; i++) {
            if(i == 0) {
                if(root.getElementsByTagName("TOTAL_COUNT").length > 0) totalCount = root.getElementsByTagName("TOTAL_COUNT")[0].firstChild.nodeValue;
                else totalCount = "0";
                
                if(root.getElementsByTagName("ROW_LIMIT").length > 0) rowLimit = root.getElementsByTagName("ROW_LIMIT")[0].firstChild.nodeValue;
                else rowLimit = "";
                
                if(root.getElementsByTagName("GROUP_LIMIT").length > 0) groupLimit = root.getElementsByTagName("GROUP_LIMIT")[0].firstChild.nodeValue;
                else groupLimit = "";
                
                if(root.getElementsByTagName("PAGE").length > 0) page = root.getElementsByTagName("PAGE")[0].firstChild.nodeValue;
                else page = "1";
                
                $('board_cmt_list_paging').innerHTML = "";
                var pagingHtml = "";
    
                pagingHtml = CommentPagingCreate('Board.comment_list', 'board_cmt_list', ACTION_URL, 'list_form', totalCount, page, rowLimit, groupLimit, 'String');
                if(Number(totalCount) > 0)
                {
                    $('board_cmt_list_paging').innerHTML = pagingHtml;
                }
            }
        
            var listTp; //parent&child 구분
            if(root.getElementsByTagName("TP").length > 0) listTp = list_item[i].getElementsByTagName("TP")[0].firstChild.nodeValue;
            else listTp = "";
            
            var listBoardLevel; //게시판 레벨
            if(root.getElementsByTagName("BOARD_LEVEL").length > 0) listBoardLevel = list_item[i].getElementsByTagName("BOARD_LEVEL")[0].firstChild.nodeValue;
            else listBoardLevel = "";
            
            var listMyImage; //my img
            if(list_item[i].getElementsByTagName("MY_IMAGE").length > 0) listMyImage = list_item[i].getElementsByTagName("MY_IMAGE")[0].firstChild.nodeValue;
            else listMyImage = "";
            
            var listNickName; //닉네임
            if(list_item[i].getElementsByTagName("NICKNAME").length > 0) listNickName = list_item[i].getElementsByTagName("NICKNAME")[0].firstChild.nodeValue;
            else listNickName = "";
            
            var listUserName // 사용자 명
            if(list_item[i].getElementsByTagName("USER_NAME").length > 0) listUserName = list_item[i].getElementsByTagName("USER_NAME")[0].firstChild.nodeValue;
            else listUserName = "";
            
            var listMyLevel; //등급
            if(list_item[i].getElementsByTagName("MY_LEVEL").length > 0) listMyLevel = list_item[i].getElementsByTagName("MY_LEVEL")[0].firstChild.nodeValue;
            else listMyLevel = "";
            
            var listLeaveFlg; //이메일 여부
            if(list_item[i].getElementsByTagName("EMAIL_ADDRESS").length > 0) listLeaveFlg = "N"; 
            else listLeaveFlg = "Y";
            
            var listUserId; //사용자 아이디(조건 더 필요)
            if(list_item[i].getElementsByTagName("USER_ID").length > 0) listUserId = list_item[i].getElementsByTagName("USER_ID")[0].firstChild.nodeValue;
            else listUserId = "";
            
            var listMyExperience; //사용자 Exp.
            if(list_item[i].getElementsByTagName("MY_EXPERIENCE").length > 0) listMyExperience = list_item[i].getElementsByTagName("MY_EXPERIENCE")[0].firstChild.nodeValue;
            else listMyExperience = "";
            
            var listContent; //내용
            if(list_item[i].getElementsByTagName("CONTENT").length > 0) listContent = list_item[i].getElementsByTagName("CONTENT")[0].firstChild.nodeValue;
            else listContent = "";          
            
            var listWriteDate; //등록일
            if(list_item[i].getElementsByTagName("WRITE_DATE").length > 0) listWriteDate = list_item[i].getElementsByTagName("WRITE_DATE")[0].firstChild.nodeValue;
            else listWriteDate = "";
            if(listWriteDate.length > 15) listWriteDate = listWriteDate.substring(0, 16); // 뒤에 소수점 나오는 거 자르기
            
            var listCmtSeq; //덧글번호
            if(list_item[i].getElementsByTagName("CMT_SEQ").length > 0) listCmtSeq = list_item[i].getElementsByTagName("CMT_SEQ")[0].firstChild.nodeValue;
            else listCmtSeq = "";
            
            var listSeq; //게시글번호
            if(list_item[i].getElementsByTagName("SEQ").length > 0) listSeq = list_item[i].getElementsByTagName("SEQ")[0].firstChild.nodeValue;
            else listSeq = 0;
            
            var listRecmdCnt; //추천 수
            if(list_item[i].getElementsByTagName("RECMD_CNT").length > 0) listRecmdCnt = list_item[i].getElementsByTagName("RECMD_CNT")[0].firstChild.nodeValue;
            else listRecmdCnt = "";
            
            var listBoardId; //덧글 고유번호
            if(list_item[i].getElementsByTagName("BOARD_ID").length > 0) listBoardId = list_item[i].getElementsByTagName("BOARD_ID")[0].firstChild.nodeValue;
            else listBoardId = "";
            
            var listReplCnt; //덧글&덧글 수
            if(list_item[i].getElementsByTagName("REPL_CNT").length > 0) listReplCnt = list_item[i].getElementsByTagName("REPL_CNT")[0].firstChild.nodeValue;
            else listReplCnt = "";
            
            var listDeleteFg; //삭제여부
            if(list_item[i].getElementsByTagName("DELETE_FG").length > 0) listDeleteFg = list_item[i].getElementsByTagName("DELETE_FG")[0].firstChild.nodeValue;
            else listDeleteFg = "";
            
            var listParentsCmtSeq; //상위덧글번호
            if(list_item[i].getElementsByTagName("PARENTS_CMT_SEQ").length > 0) listParentsCmtSeq = list_item[i].getElementsByTagName("PARENTS_CMT_SEQ")[0].firstChild.nodeValue;
            else listParentsCmtSeq = "";
            
            //베스트 덧글 
            if(listTp == 'B'){
                
            }else{
                //일반 덧글
                if(listBoardLevel == 0){ //덧글
                    // li 생성
                    var objLi = xml_view.appendChild(document.createElement("li"));
                    
                    // 사진 div 생성
                    var objDiv = objLi.appendChild(document.createElement("div")); 
                    objDiv.className = "photo";
                    
                    // my img 생성
                    var img_url = listMyImage;
                    if(img_url == "xx")
                        img_url = "";
                        
                    var _img = objDiv.appendChild( document.createElement('img') );
                    _img.src = (img_url)? img_url : message["noimage.src.my_image"] ; // img_url 이 없다면, error 이미지 보이기  
                    _img.width = '69';
                    _img.height = '69';
                    
                    // 사용자정보 ui 생성
                    var objUi = objLi.appendChild(document.createElement("ul"));
                    objUi.className = "info";
                                        
                    // tooltip li 생성
                    var objLi2 = objUi.appendChild(document.createElement("li") );
                    
                    //tooltip 생성
                    var objSpan2 = objLi2.appendChild(document.createElement("span")); 
                    objSpan2.style.cursor = "pointer";
                    objSpan2.innerHTML = listNickName;
                    objSpan2.className = "tooltip html_" + listUserName + "_C writer";
                    var objDiv2 = objSpan2.appendChild(document.createElement("div"));
                    objDiv2.style.display = "none";
                    objDiv2.id = listUserName + "_C";
                    objDiv2.innerHTML = setNameCardDiv2(listUserId, listNickName, listUserName, listLeaveFlg);
                    
                    // 레벨 이미지 + 등급명 생성
					var objLi3 = objUi.appendChild(document.createElement("li"));
					if (listMyLevel > 0){
						
						var levelName = "";
						
						if(listMyLevel >=1 && listMyLevel <=3){
							levelName = "초보";
						}else if(listMyLevel >=4 && listMyLevel <=6){
							levelName = "중수";
						}else if(listMyLevel >=7 && listMyLevel <=9){
							levelName = "고수";
						}else if(listMyLevel >=10 && listMyLevel <=15){
							levelName = "매니아";
						}else if(listMyLevel > 15){
							levelName = "울트라매니아";
						}
						
						objLi3.innerHTML = levelImgStr2(listMyLevel, listUserId) + "&nbsp;" + levelName;
					}
					
					// Lv li 생성
					var objLi4 = objUi.appendChild(document.createElement("li"));
					if(listMyExperience != "") objLi4.innerHTML = " Lv." + listMyLevel;
                    
                    // 내용 & 버튼
                    var objDiv3 = objLi.appendChild(document.createElement("div"));
                    objDiv3.className = "reple_cont";
                    
                    if(listDeleteFg == 'A'){
                        objDiv3.appendChild(document.createTextNode(message["board.alert.delete.withReply.byAdmin"]));
                    }else if(listDeleteFg == 'Y'){
                        objDiv3.appendChild(document.createTextNode(message["board.alert.delete.withReply.byWriter"]));
                    }else{
                        var objP = objDiv3.appendChild(document.createElement("p"));
                        objP.innerHTML = listContent + "&nbsp;";
                        // S: 제자리 덧글수정으로 인해 추가
                        objP.id = "cmt_input_prev_position_" + listCmtSeq;
                        objP.setAttribute("name","cmt_input_prev_position");
                        
                        var objDivForEdit = objDiv3.appendChild(document.createElement("div"));
                        objDivForEdit.id = "cmt_input_target_position_" + listCmtSeq;
                        // E: 제자리 덧글수정으로 인해 추가
						var objSpan3 = objP.appendChild(document.createElement("span"));
						objSpan3.className = "date";
						var inHtml = "&nbsp;" + "(";
						if(listWriteDate.length > 15) inHtml += listWriteDate.substring(0, 16);
						else inHtml += listWriteDate;
						inHtml += ") ";
                        if(cmtRankYn == 'Y'){
                            inHtml += message["board.recmd_cnt_short"] + ":";
                        }
                        objSpan3.innerHTML = inHtml;
                        /*		기존 신고+추천 버튼
                        var objSpan4 = objSpan3.appendChild(document.createElement("span"));
                        objSpan4.id = "cmtRecmdCount_" + listCmtSeq;
                        var _aText = "";
                        
                        if(cmtRankYn == 'Y'){
                            _aText = listRecmdCnt;  
                        } 
                        
                        if(listUserId == userId || adminYn == "Y"){
                            _aText += "<input type='hidden' name='" + listCmtSeq + "_content' id='" + listCmtSeq + "_content' value='" + conv_emo_to_code(listContent) + "'/>";
                            _aText += "<a href='#' onclick=\"javascript:Board.showCommentFormForEdit('list_form', 'ajax_cmt_update', '" + listSeq + "', '";
                            _aText += listCmtSeq + "', '" + listBoardId + "', '" + listBoardLevel + "', '" + tid + "', '" + listNickName + "', '";
                            _aText += userId + "', '" + listCmtSeq + "_content', 'N', '" + page + "', 'N'); return false\">";
                            _aText += "&nbsp;<img src='/ysrimg/board/btn_modify.gif' alt='" + message["board.edit"] + "' style='cursor:hand;'/></a>";
                            _aText += "<a href='#' onclick=\"javascript:Board.deleteComment('" + ACTION_URL + "', 'list_form', 'ajax_cmt_delete', 'board_cmt_list', '";
                            _aText += listSeq + "', '" + listCmtSeq + "', '" + listBoardId + "', '" + listBoardLevel + "', '" + tid + "', '" + listReplCnt + "'); return false\">";
                            _aText += "&nbsp;<img src='/ysrimg/board/btn_delete.gif' alt='" + message["board.delete"] + "' style='cursor:hand;'/></a>";
                        }
                        objSpan4.innerHTML = _aText;                        
                        */
                        
                        // 덧글&덧글 : 추천&신고  버튼
                        var objDiv4 = objLi.appendChild(document.createElement("div"));
                        objDiv4.className = "reple_btns";
                        // S: 제자리 덧글 수정
                        objDiv4.id = "reple_btns_" + listCmtSeq;
                        objDiv4.setAttribute("name","reple_btns_prev_position");
                        
                        // E: 제자리 덧글 수정
                        
                        _aText = "";
                        _aText += "<a href='#' onclick=\"javascript:Board.showCommentForm('list_form', 'ajax_cmt_insert_reply', '" + listSeq + "', '";
                        _aText += listCmtSeq + "', '" + listBoardId + "', '" + listBoardLevel + "', '" + tid + "', '" + listNickName + "', '";
                        _aText += userId + "', '', 'N', '" + page + "'); return false\">";
                        _aText += message["board.comment_write2"] + "</a>";
                        
                        // S: 수정 삭제 
                        if(listUserId == userId || adminYn == "Y"){
                            _aText += "<br/><input type='hidden' name='" + listCmtSeq + "_content' id='" + listCmtSeq + "_content' value='" + conv_emo_to_code(listContent) + "'/>";
                            _aText += "<a class='line' href='#' onclick=\"javascript:Board.showCommentFormForEdit('list_form', 'ajax_cmt_update', '" + listSeq + "', '";
                            _aText += listCmtSeq + "', '" + listBoardId + "', '" + listBoardLevel + "', '" + tid + "', '" + listNickName + "', '";
                            _aText += userId + "', '" + listCmtSeq + "_content', 'N', '" + page + "', 'N'); return false\"> ";  //2009.10.27 k.h.k : 덧글의 수정시 해당 페이지로 GO하기위해 page변수추가
                            _aText += message["board.edit"] + " </a>";
                            _aText += "<a href='#' onclick=\"javascript:Board.deleteComment('" + ACTION_URL + "', 'list_form', 'ajax_cmt_delete', 'board_cmt_list', '";
                            _aText += listSeq + "', '" + listCmtSeq + "', '" + listBoardId + "', '" + listBoardLevel + "', '" + tid + "', '" + listReplCnt + "'); return false\"> ";
                            _aText += message["board.delete"] + "</a>";
                        }
                        // E: 수정 삭제 
                        
                        if(listUserId != userId){
                            if(cmtRankYn == 'Y'){
                                _aText += "<a href='#' onclick=\"javascript:Board.cmt_recmd('" + ACTION_URL + "', 'list_form', 'ajax_cmt_recmd', '" + listCmtSeq + "'); return false\">";
                                _aText += "<img src='/ysrimg/board/btn_recomd_reple.gif' alt='" + message["board.comment"] + message["board.recmd_cnt_short"] + "' style='cursor:hand;'/></a>";
                            }
                            _aText += "<a href='#' onclick=\"javascript:Common.report('report_form', '/combi.do', 'report_c', '" + listCmtSeq + "', '" + tid + "'); return false\">";
                            _aText += message["admin.report.replyReport"] + "</a>";
                        }
                        objDiv4.innerHTML = _aText;
                    }
                    
                    var objLi5 = xml_view.appendChild(document.createElement("li"));
                    objLi5.className = "re_write";
                    objLi5.id = "cmt_input_position_" + listTp + listCmtSeq;
                    objLi5.style.display = "none";
                }else{
                    // li 생성
                    var objLi = xml_view.appendChild(document.createElement("li"));
                    objLi.className = 're_reple';
                                        
                    // 사진 div 생성
                    var objDiv = objLi.appendChild(document.createElement("div")); 
                    objDiv.className = "photo";
                    
                    // my img 생성
                    var img_url = listMyImage;
                    if(img_url == "xx")
                        img_url = "";
                        
                    var _img = objDiv.appendChild( document.createElement('img') );
                    _img.src = (img_url)? img_url : message["noimage.src.my_image"] ; // img_url 이 없다면, error 이미지 보이기  
                    _img.width = '69';
                    _img.height = '69';
                    
                    objLi.appendChild(objDiv);
                    
                    // 사용자정보 ui 생성
                    var objUi = objLi.appendChild(document.createElement("ul"));
                    objUi.className = "info";
                    
                    // tooltip li 생성
                    var objLi2 = objUi.appendChild(document.createElement("li") );
                    
                    //tooltip 생성
                    var objSpan2 = objLi2.appendChild(document.createElement("span")); 
                    objSpan2.style.cursor = "pointer";
                    objSpan2.innerHTML = listNickName;
                    objSpan2.className = "tooltip html_" + listUserName + "_C";
                    var objDiv2 = objSpan2.appendChild(document.createElement("div"));
                    objDiv2.style.display = "none";
                    objDiv2.id = listUserName + "_C";
                    objDiv2.innerHTML = setNameCardDiv2(listUserId, listNickName, listUserName, listLeaveFlg);
                                        
                    // 레벨 이미지 + 등급명 생성
					var objLi3 = objUi.appendChild(document.createElement("li"));
					if (listMyLevel > 0){
						
						var levelName = "";
						
						if(listMyLevel >=1 && listMyLevel <=3){
							levelName = "초보";
						}else if(listMyLevel >=4 && listMyLevel <=6){
							levelName = "중수";
						}else if(listMyLevel >=7 && listMyLevel <=9){
							levelName = "고수";
						}else if(listMyLevel >=10 && listMyLevel <=15){
							levelName = "매니아";
						}else if(listMyLevel > 15){
							levelName = "울트라매니아";
						}
						
						objLi3.innerHTML = levelImgStr2(listMyLevel, listUserId) + "&nbsp;" + levelName;
					}
					
					// Lv li 생성
					var objLi4 = objUi.appendChild(document.createElement("li"));
					if(listMyExperience != "") objLi4.innerHTML = " Lv." + listMyLevel;

                    // 내용 & 버튼
                    var objDiv3 = objLi.appendChild(document.createElement("div"));
                    objDiv3.className = "reple_cont";
                    
                    if(listDeleteFg == 'A'){
                        objDiv3.appendChild(document.createTextNode(message["board.alert.delete.withReply.byAdmin"]));
                    }else if(listDeleteFg == 'Y'){
                        objDiv3.appendChild(document.createTextNode(message["board.alert.delete.withReply.byWriter"]));
                    }else{
                        var objP = objDiv3.appendChild(document.createElement("p"));
                        objP.innerHTML = listContent + "&nbsp;";
                        // S: 제자리 덧글수정으로 인해 추가
                        objP.id = "cmt_input_prev_position_" + listCmtSeq;
                        objP.setAttribute("name","cmt_input_prev_position");
                        
                        var objDivForEdit = objDiv3.appendChild(document.createElement("div"));
                        objDivForEdit.id = "cmt_input_target_position_" + listCmtSeq;
                        // E: 제자리 덧글수정으로 인해 추가
                        
                        var objSpan3 = objP.appendChild(document.createElement("span"));
                        objSpan3.className = "date";
                        var inHtml = "(";
                        if(listWriteDate.length > 15) inHtml += listWriteDate.substring(0, 16);
                        else inHtml += listWriteDate;
                        inHtml += ")";
                        objSpan3.innerHTML = inHtml;
                        
                        /*
                        var objSpan4 = objSpan3.appendChild(document.createElement("span"));
                        objSpan4.id = "cmtRecmdCount_" + listCmtSeq;
                        var _aText = "";
                        
                        if(listUserId == userId || adminYn == "Y"){
                            _aText += "<input type='hidden' name='" + listCmtSeq + "_content' id='" + listCmtSeq + "_content' value='" + conv_emo_to_code(listContent) + "'/>";
                            _aText += "<a href='#' onclick=\"javascript:Board.showCommentFormForEdit('list_form', 'ajax_cmt_update', '" + listSeq + "', '";
                            _aText += listCmtSeq + "', '" + listBoardId + "', '" + listBoardLevel + "', '" + tid + "', '" + listNickName + "', '";
                            _aText += userId + "', '" + listCmtSeq + "_content', 'N', '" + page + "', 'Y'); return false\">";
                            _aText += "&nbsp;<img src='/ysrimg/board/btn_modify.gif' alt='" + message["board.edit"] + "' style='cursor:hand;'/></a>";
                            _aText += "<a href='#' onclick=\"javascript:Board.deleteComment('" + ACTION_URL + "', 'list_form', 'ajax_cmt_delete', 'board_cmt_list', '";
                            _aText += listSeq + "', '" + listCmtSeq + "', '" + listBoardId + "', '" + listBoardLevel + "', '" + tid + "', '0'); return false\">";
                            _aText += "&nbsp;<img src='/ysrimg/board/btn_delete.gif' alt='" + message["board.delete"] + "' style='cursor:hand;'/></a>";
                        }
                        objSpan4.innerHTML = _aText;
                        */
                        
                        // 덧글&덧글 : 추천&신고  버튼
                        var objDiv4 = objLi.appendChild(document.createElement("div"));
                        objDiv4.className = "reple_btns";
                        // S: 제자리 덧글 수정
                        objDiv4.id = "reple_btns_" + listCmtSeq;
                        objDiv4.setAttribute("name","reple_btns_prev_position");
                        
                        // E: 제자리 덧글 수정
                        _aText = "";
						
						// S: 수정 삭제 
						
						if(listUserId == userId || adminYn == "Y"){
							_aText += "<br/><input type='hidden' name='" + listCmtSeq + "_content' id='" + listCmtSeq + "_content' value='" + conv_emo_to_code(listContent) + "'/>";
							_aText += "<a class='line' href='#' onclick=\"javascript:Board.showCommentFormForEdit('list_form', 'ajax_cmt_update', '" + listSeq + "', '";
							_aText += listCmtSeq + "', '" + listBoardId + "', '" + listBoardLevel + "', '" + tid + "', '" + listNickName + "', '";
							_aText += userId + "', '" + listCmtSeq + "_content', 'N', '" + page + "', 'Y'); return false\"> ";  //2009.10.27 k.h.k : 덧글의 수정시 해당 페이지로 GO하기위해 page변수추가
							_aText += message["board.edit"] + " </a>";
							_aText += "<a href='#' onclick=\"javascript:Board.deleteComment('" + ACTION_URL + "', 'list_form', 'ajax_cmt_delete', 'board_cmt_list', '";
							_aText += listSeq + "', '" + listCmtSeq + "', '" + listBoardId + "', '" + listBoardLevel + "', '" + tid + "', '" + listReplCnt + "'); return false\">";
							_aText += message["board.delete"] + " </a>";
						}
						// E: 수정 삭제 
                        
                        if(listUserId != userId){
                            _aText += "<a href='#' onclick=\"javascript:Common.report('report_form', '/combi.do', 'report_c', '" + listCmtSeq + "', '" + tid + "'); return false\">";
                            _aText +=  message["admin.report.replyReport"] + "</a>";
                        }
                        objDiv4.innerHTML = _aText;
                    }
                    
                    var objLi5 = xml_view.appendChild(document.createElement("li"));
                    objLi5.className = "re_write";
                    objLi5.id = "cmt_input_position_" + listTp + listCmtSeq;
                    objLi5.style.display = "none";
                }
            }               
        }
    }else{
        $('board_cmt_list_paging').innerHTML = "";
    }

    //var ttt = document.createElement("div");
    //ttt.appendChild(xml_view);
    //alert(ttt.innerHTML);

    if(root.hasChildNodes()){
        TooltipManager.init("tooltip");
    }
}

/*
	. 접미사가  count|cnt 로 끝나는 단어를 골라서 디폴트 값을 '0'을 리턴합니다.
	. ignore case 
*/
function checksuffix(str)
{
	var myRegExp = /[^(cou|c)nt]\b/gi;
	return !myRegExp.test(str);
}

//상단 접근 메소드
function getdefaultval(str)
{
	if(checksuffix(str)) return "0";
	else return "";
}



deleteFlag = false;
var insertCheck = false;

var AjaxBoardManager = {
	/*
	* 리스트를 Ajax를 이용해서 HTML을 생성해서 가져온다. postBody: postData,
	*/
	list : function(element, URL, formName) {
		showAjaxLoadingBox(element);
		new Ajax.Request(URL, {
			method : 'POST',
			parameters:Form.serialize(formName),
			encoding : 'UTF-8',
			onComplete : function(xmlHttp) {
				// 리스트 HTML을 생성
				ListTableCreate(formName, element, xmlHttp.responseXML);
				if($('ajaxLoadingBox')) Element.hide('ajaxLoadingBox');
				
				// 히스토리 추가
				if(typeof dhtmlHistory != "undefined") {
					var newLocation = $(formName).page.value;
					var toJson = " { ";
					toJson += "url : '" + URL + "', ";
					toJson += "element : '" + element + "', ";
					toJson += "page : '" + $(formName).page.value + "', ";
					toJson += "formName : '" + formName + "' ";
					toJson += " } ";
					dhtmlHistory.add(newLocation, toJson);
				} else {
					//alert("dhtmlHistory undefined");
				}
			},
			onFailure : function(){
				if($('ajaxLoadingBox')) Element.hide('ajaxLoadingBox');
			}
		});
	},
	
	/*
	* 리스트를 Ajax를 이용해서 HTML을 생성해서 가져온다. postBody: postData,
	*/
	view_list : function(element, URL, formName) {
		showAjaxLoadingBox(element);
		new Ajax.Request(URL, {
			method : 'POST',
			parameters:Form.serialize($(formName)),
			encoding : 'UTF-8',
			onComplete : function(xmlHttp) {
				// 리스트 HTML을 생성
				ViewListTableCreate(formName, element, xmlHttp.responseXML);
				if($('ajaxLoadingBox')) Element.hide('ajaxLoadingBox');
                 Board.show('listOpen');
                 Board.hide('listClose');					
			},
			onFailure : function(){
				if($('ajaxLoadingBox')) Element.hide('ajaxLoadingBox');
			}
		});
	},
	// 덧글 수를 가져오기
    getCommentCount: function(url, targetForm) {
        new Ajax.Request(url+ "?cmd=commentCount", {
            method : 'POST',
            postBody: Form.serialize($(targetForm)),
            encoding : 'UTF-8',
            onComplete : function(xmlHttp) {
                var resultString = xmlHttp.responseText;
                var func = new Function("return " + resultString);
                var obj = func();
                if($('comment_total')) {
                    $('comment_total').innerHTML = "(" + obj.cmtTotalRealCount + ")";
                    return;
                }
            }
        });
    },
	// Ajax로 덧글을 등록한다.
    insertComment : function(element, URL, targetForm, orgForm) {
        // 블럭레이어를 보여준다.
        blockLayerTalkclub.show();
        
        document.body.appendChild( document.getElementById('input_cmt')).style.display = 'none';

        new Ajax.Request(URL, {
            method : 'POST',
            postBody: Form.serialize($(targetForm)),
            encoding : 'UTF-8',
            onComplete : function(xmlHttp) {
                var resText = xmlHttp.responseText;
                if(resText.indexOf('FAILED') != -1 )
                {
                    Common.alertDialog(message["board.alert.insert.comment.failed"]);
                    return;
                }
                else if(resText.indexOf('GRANTNO') != -1 )
                {
                    Common.alertDialog(message["board.alert.grant.msg"]);
                    return;
                }
                else
                {
                    // 덧글 입력상자 초기화
                    $(orgForm).comment_content.value = '';
                    
                    // 리스트 HTML을 생성 
                    CommentListTableCreate(orgForm, element, xmlHttp.responseXML);

                    // 변경된 덧글수를  가져와서 화면에 보여준다.
                    AjaxBoardManager.getCommentCount(URL, orgForm);
                    
                    // 블럭레이어를 닫는다.
                    blockLayerTalkclubInstance.close();
                    return;
                }
            }
        });
    },
    // Ajax로 덧글을 수정한다.
    updateComment : function(element, URL, targetForm, orgForm) {
       
       // 블럭레이어를 보여준다.
       blockLayer.show();
       
       // target로 옮겼던 수정폼을 다시 body에 붙인다.
       document.body.appendChild( document.getElementById('edit_cmt')).style.display = 'none';
       
       var cmt_target_position = document.getElementById('cmt_input_target_position_' + document.comment_form.cmtSeq.value);
       cmt_target_position.innerHTML = "수정중입니다......";

        new Ajax.Request(URL, {
            method : 'POST',
            postBody: Form.serialize($(targetForm)),
            encoding : 'UTF-8',
            onComplete : function(xmlHttp) {
                var resText = xmlHttp.responseText;
                if(resText.indexOf('FAILED') != -1 )
                {
                    Common.alertDialog(message["board.alert.insert.comment.failed"]);
                    return;
                }
                else if(resText.indexOf('GRANTNO') != -1 )
                {
                    Common.alertDialog(message["board.alert.grant.msg"]);
                    return;
                }
                else
                {
                    // 덧글 입력상자 초기화
                    $(orgForm).comment_content.value = '';
                    
                    // 리스트 HTML을 생성 
                    CommentListTableCreate(orgForm, element, xmlHttp.responseXML);
                    
                    // 블럭레이어를 닫는다.
                    blockLayerByJedison.close();
                    
                    // 변경된 덧글수를  가져와서 화면에 보여준다.
                    AjaxBoardManager.getCommentCount(URL, orgForm);

                    return;
                }
            }
        });
    },

	insertComment1 : function(element, URL, targetForm, orgForm) {
		document.body.appendChild( document.getElementById('input_cmt')).style.display = 'none';
	
		new Ajax.Request(URL, {
			method : 'POST',
			postBody: Form.serialize($(targetForm)),
			encoding : 'UTF-8',
			onComplete : function(xmlHttp) {
				var resText = xmlHttp.responseText;
				if(resText.indexOf('FAILED') != -1 )
				{
					Common.alertDialog(message["board.alert.insert.comment.failed"]);
					return;
				}
				else if(resText.indexOf('GRANTNO') != -1 )
				{
					Common.alertDialog(message["board.alert.grant.msg"]);
					return;
				}
				else
				{
					
					//if ($('textlimit'))	$('textlimit').innerText = '0';	
					CommentListTableCreate(orgForm, element, xmlHttp.responseXML);
					
					// 변경된 덧글수를  가져와서 화면에 보여준다.
					AjaxBoardManager.getCommentCount(URL, orgForm);
					return;
				}
			}
		});
	},
	
	// Ajax로 덧글 리스트를 XML로 가져온다.
	comment_list : function(element, URL, formName, postData) {
		document.body.appendChild( document.getElementById('input_cmt')).style.display = 'none';
	
		showAjaxLoadingBox(element);
		new Ajax.Request(URL, {
			method : 'POST',
			postBody: postData,
			encoding : 'UTF-8',
			onComplete : function(xmlHttp) {
				var resText = xmlHttp.responseText;
				if(resText.indexOf('FAILED') != -1 ) {
					Common.alertDialog(message["board.alert.list.comment.failed"]);
					return;
				} else if(resText.indexOf('GRANTNO') != -1 ) {
					Common.alertDialog(message["board.alert.grant.msg"]);
					return;
				} else {
					// 리스트 HTML을 생성
					CommentListTableCreate(formName, element, xmlHttp.responseXML);
				}
				if($('ajaxLoadingBox')) Element.hide('ajaxLoadingBox');
			},
			onFailure : function(){
				if($('ajaxLoadingBox')) Element.hide('ajaxLoadingBox');
			}
		});
	},
	
	// Ajax로 추천하기 
	recmd : function(URL, formName) {
		//20081020 k.h.k
		
		if(userId == board_userId) {
			alert_module.show('alert', {
    			msg : message["board.alert.grant.msg"]
    		});
    		return;
		}
		
		new Ajax.Request(URL, {
			method : 'POST',
			parameters:Form.serialize($(formName)),
			encoding : 'UTF-8',
			onSuccess : function(xmlHttp) {
				var returnString = trim(xmlHttp.responseText);
				var func = new Function("return " + returnString);
				var obj = func();
				if(obj.errcode == '0') {
					if($('recmdCount')) {
						$('recmdCount').innerHTML = message["board.recmd_cnt"] + " : " + obj.recmdCnt;
					}
				} else if(obj.errcode == '100') {
					alert_module.show('alert', {
		    			msg : message["board.alert.recmd.duplicate"]
		    		});
		    		return;
				} else if(obj.errcode == '300') {
					alert_module.show('alert', {
		    			msg : message["board.alert.recmd.failed"]
		    		});
		    		return;
				} else if(obj.errcode == '500') {	// 2007.07.20 추가
					alert_module.show('confirm', {
			   			msg : message["board.alert.login.msg"],
				   			ok_func : function () {
								location.href = "/login.do?cmd=login&nextUrl=" + NEXT_URL;
								return;
				   			},
				   			cancel_func : function () {
				   				return;
				   			}
			   		});
				} else if(obj.errcode == '700') {	// 2007.07.25 추가
					alert_module.show('alert', {
		    			msg : message["board.alert.grant.msg"]
		    		});
		    		return;
				}
			}
		});
	},
	
	// Ajax로 덧글을 삭제한다.
	deleteComment : function(element, URL, formName, postData) {
		document.body.appendChild( document.getElementById('input_cmt')).style.display = 'none';
	
		//alert(postData);
		new Ajax.Request(URL, {
			method : 'POST',
			postBody: postData,
			encoding : 'UTF-8',
			onComplete : function(xmlHttp) {
				var resText = xmlHttp.responseText;
				if(resText.indexOf('FAILED') != -1 ) {
					alert(message["board.alert.delete.comment.failed"]);
					return;
				} else if(resText.indexOf('GRANTNO') != -1 ) {
					alert(message["board.alert.grant.msg"]);
					return;
				} else {
					// 리스트 HTML을 생성
					//$(formName).content.value = '';
					CommentListTableCreate(formName, element, xmlHttp.responseXML);
					
					// 변경된 덧글수를  가져와서 화면에 보여준다.
					AjaxBoardManager.getCommentCount(URL, formName);
				}
			}
		});
	},
	
	// Ajax로 해당 게시물의 답변 달린 수를 가져온다.
	getReplyCount : function(URL, postData) {
		//alert(postData);
		new Ajax.Request(URL, {
			method : 'POST',
			postBody: postData,
			encoding : 'UTF-8',
			onComplete : function(xmlHttp) {
				var resText = xmlHttp.responseText;
				if(resText.indexOf('FAILED') != -1 ) {
					//alert(resText);
					return;
				} else {
					//
					var replyCount = "1";
					if(xmlHttp.responseXML.getElementsByTagName("TOTAL_COUNT").length > 0) {
						replyCount = xmlHttp.responseXML.getElementsByTagName("TOTAL_COUNT")[0].firstChild.nodeValue;
					} else {
						replyCount = "1";
					}
					if(Number(replyCount) > 0) {
						deleteFlag = true;
					}
				}
			}
		});
	},
	
	// Ajax로 덧글 추천하기
	cmt_recmd : function(URL, formName, cmt_seq)
	{
		new Ajax.Request(URL, {
			method : 'POST',
			parameters:Form.serialize($(formName)),
			encoding : 'UTF-8',
			onSuccess : function(xmlHttp) {
				var returnString = trim(xmlHttp.responseText);
				var func = new Function("return " + returnString);
				var obj = func();
				if(obj.errcode == '0')
				{
					if(document.getElementById('cmtRecmdCount_' + cmt_seq)) 
					{
					   document.getElementById('cmtRecmdCount_' + cmt_seq).innerHTML = obj.cmtRecmdCount;
					}
				} else if(obj.errcode == '100') {
					Common.alertDialog(message["board.alert.recmd.duplicate"]);
				} else if(obj.errcode == '300') {
					Common.alertDialog(message["board.alert.recmd.failed"]);
				} else if(obj.errcode == '500') {	//2007.07.20 추가 
					Common.loginConfirmDialog(message["board.alert.login.msg"]);
				} else if(obj.errcode == '700') {	// 2007.07.25 추가 
					Common.alertDialog(message["board.alert.grant.msg"]);
				}
			}
		});
	}	
};

/**
* 보드 관련 이벤트 처리부분
*/
var Board = {
// 파일 다운로드 수 카운트
    setFileDownloadCnt: function (url, cmd, seq, cntFg, cg) {
        var postData = "";
        postData += "cmd="+cmd;
        postData += "&seq=" + seq;
        postData += "&cg="  + cg;
        postData += "&cntFg=" + cntFg;
        new Ajax.Request(url, {
            method : 'POST',
            postBody: postData,
            encoding : 'UTF-8',
            onComplete : function(xmlHttp) {
                // do nothing!!
            },
            onFailure : function(){
                // do nothing!!
            }
        });
    },
    // 이미지사이즈변경
    setImgPositionSize : function (oj) {
	    var w = parseInt(oj.scrollWidth);
	    var h = parseInt(oj.scrollHeight);
	    if (w > 135 || h > 114) {
	        if (w > h) {
	            oj.style.height = 114 + 'px';
	            oj.style.width = (w * 114) / h + 'px';
	        } else {
	            oj.style.width = 135 + 'px';
	            oj.style.height = (135 * h) / w + 'px';
	        }
	    }
	    
	    if (w <= 135 && h <= 114) {
	        oj.style.marginTop = ((114/2) - (h/2)) + 'px'; 
	    }
	    
	    oj.parentNode.style.visibility = 'visible';
    },
    // 이모티콘창보이기..
    showEmoticon : function (oj, insertArea) {
        var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
        var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
        var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
        var isFF = (navigator.userAgent.indexOf("Firefox") != -1) ? true : false;
        
        if(user_id == '') {
            alert_module.show('confirm', {
                msg : message["board.alert.login.msg"],
                ok_func : function () {
                    location.href = "/login.do?cmd=login&nextUrl=" + NEXT_URL;
                    return;
                },
                cancel_func : function () {
                    return;
                }
            });
            return;
        }
        
        //parent = (typeof parent == 'string')? e_(parent) : parent;
        emo_json.insertArea = insertArea;
        var emo = init_emo();
        
        var tempX = oj.parentNode.offsetLeft;
        // 파폭일경우
        if(isFF){
           var tempY = oj.parentNode.offsetTop;
        } else if(isIE){
           var tempY = oj.offsetTop;
        }
        var scrollY = document.documentElement.scrollHeight;
        if (tempX < 0){tempX = 0;}
        if (tempX > 650 ) { tempX = 585; }
        if (tempY < 0){tempY = 0;}
        if (tempY + 240 > scrollY ) { tempY = tempY - 250; }
        
        emo.style.left = tempX + 20 + "px";
        emo.style.top = tempY + "px";
        emo.style.display = 'block';    
        //parent.appendChild(emo);  
    },
    // 덧글의 덧글에서 이모티콘창보이기
    showEmoticonForReply : function (oj, insertArea) {
        var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
        var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
        var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
        var isFF = (navigator.userAgent.indexOf("Firefox") != -1) ? true : false;
        
        if(user_id == '') {
            alert_module.show('confirm', {
                msg : message["board.alert.login.msg"],
                ok_func : function () {
                    location.href = "/login.do?cmd=login&nextUrl=" + NEXT_URL;
                    return;
                },
                cancel_func : function () {
                    return;
                }
            });
            return;
        }
        
        //parent = (typeof parent == 'string')? e_(parent) : parent;
        emo_json.insertArea = insertArea;
        var emo = init_emo();
        var tempX = oj.parentNode.offsetLeft;
        var tempY = oj.parentNode.offsetParent.offsetTop;
        var scrollY = document.documentElement.scrollHeight;
        if (tempX < 0){tempX = 0;}
        if (tempX > 650 ) { tempX = 585; }
        if (tempY < 0){tempY = 0;}
        if (tempY + 240 > scrollY ) { tempY = tempY - 250; }
        emo.style.left = tempX + 20 + "px";
        emo.style.top = tempY + "px";
        emo.style.display = 'block';    
        //parent.appendChild(emo);  
    },
    // 게시판이동
    goBroadcast : function(url){
        location.href=url;
    },
	//게시판 유형 변경시 처리
	boardTypeChange : function(url, formName, divElement, type, typeIdx) {
		typeIdx = Number(typeIdx);
		switch(typeIdx) {
			case 1 :
				$('list_type_btn').src = "/ysrimg/board/btn_list_out.gif";
				$('img_type_btn').src = "/ysrimg/board/btn_img_over.gif";   
				break;
			case 2 :
				$('list_type_btn').src = "/ysrimg/board/btn_list_over.gif";
				$('img_type_btn').src = "/ysrimg/board/btn_img_out.gif"; 
				break;
			default:
				break;
		}
		$(formName).cmd.value ="ajax_list";
		$(formName).btype.value = type;
		$(formName).orderBy.value = "";
		change_what = 'btype';
		AjaxBoardManager.list(divElement, url, formName);
	},
	
	//페이지 출력수 변경시 처리
    rowLimitChange : function(url, formName, divElement) {
        //alert(divElement);
        $(formName).cmd.value = "ajax_list";
        $(formName).page.value = "1";
        document.body.focus();
        change_what = 'row_limit';
        AjaxBoardManager.list(divElement, url, formName);
    },
	
	//정렬 시 호출
	orderBy : function(url, formName, divElement, orderBy, sortIdx) {
		sortIdx = Number(sortIdx);
        
        switch(sortIdx) {
            case 1 :
                $('sort_id_date').className = "selected";
                if(cmtOd == 'Y')$('sort_id_cmt').className = "";
                if(viewOd == 'Y')$('sort_id_view').className = "";
                if(recmdOd == 'Y')$('sort_id_recmd').className = "";
                break;
            case 2 :
                if(cmtOd == 'Y')$('sort_id_cmt').className = "";
                if(viewOd == 'Y')$('sort_id_view').className = "selected";
                if(recmdOd == 'Y')$('sort_id_recmd').className = "";
                $('sort_id_date').className = "";
                break;
            case 3 :
                if(viewOd == 'Y')$('sort_id_view').className = "";
                if(cmtOd == 'Y')$('sort_id_cmt').className = "selected";
                if(recmdOd == 'Y')$('sort_id_recmd').className = "";
                $('sort_id_date').className = "";
                break;
            case 4 :
                if(recmdOd == 'Y')$('sort_id_recmd').className = "selected";
                if(cmtOd == 'Y')$('sort_id_cmt').className = "";
                if(viewOd == 'Y')$('sort_id_view').className = "";
                $('sort_id_date').className = "";
                break;
            case 5 :
                break;
            default:
                break;
        }
        
		$(formName).cmd.value = "ajax_list";
		$(formName).page.value = "1";
		$(formName).orderBy.value = orderBy;
		AjaxBoardManager.list(divElement, url, formName);
	},
	
	//글쓰기 페이지로 이동
	write: function(url, formName, cmd) {
		if(userId == '') {
			alert_module.show('confirm', {
	   			msg : message["board.alert.login.msg"],
		   			ok_func : function () {
						location.href = "/login.do?cmd=login&nextUrl=" + NEXT_URL;
						return;
		   			},
		   			cancel_func : function () {
		   				return;
		   			}
	   		});
	   		return;
		}
		$(formName).cmd.value = cmd;
		$(formName).action = url;
		$(formName).method = "post";
		$(formName).submit();
	},
	
	//글보기 페이지로 이동
	view : function(url, formName, seq, cmd, method) {
		$(formName).cmd.value = cmd;
		$(formName).seq.value = seq;
		$(formName).action = url;
		$(formName).method = method;
		$(formName).submit();
	},

	// 추천하기
	recmd : function(url, formName, cmd) {
		if(userId == '') {
			alert_module.show('confirm', {
	   			msg : message["board.alert.login.msg"],
		   			ok_func : function () {
						location.href = "/login.do?cmd=login&nextUrl=" + NEXT_URL;
						return;
		   			},
		   			cancel_func : function () {
		   				return;
		   			}
	   		});
	   		return;
		}
		$(formName).cmd.value = cmd;
		AjaxBoardManager.recmd(url, formName);
	},

	// 답변페이지로 이동
    reply : function(url, formName, cmd, method, repdepthCnt, boardLevel) {
        //alert('repdepthCnt : ' + repdepthCnt + ', boardLevel : ' + boardLevel);
        if(Number(repdepthCnt) < Number(boardLevel)+1) {
            //Common.alertDialog(message["board.alert.list.reply.over"]);
            return;
        }
        $(formName).cmd.value = cmd;
        $(formName).action = url;
        $(formName).method = method;
        $(formName).submit();
    },
    
    // 덧글  Validation Check 및 저장.
	insertComment : function(url, formName, cmd, divElement, method, content_id)
	{
	   Board.hiddenCommentFormForEdit(formName);
        Board.hiddenCommentForm();
		if(userId == '')
		{
			Common.loginConfirmDialog(message["confirm.login.comment.msg"]);
			return;
		}
		charLengthCheck(message["board.comment.length"], formName, content_id);
		if(trim(document.forms[formName].elements[content_id].value) == '')
		{
			Common.alertDialog(message["board.alert.insert.comment.content_input"]);
			return;
		}

		document.comment_form.action			=	url;
		document.comment_form.cmd.value			=	cmd;
		document.comment_form.cg.value			=	document.forms[formName].elements['comment_cg'].value;
		document.comment_form.seq.value			=	document.forms[formName].elements['comment_seq'].value;
		document.comment_form.cmtSeq.value		=	document.forms[formName].elements['comment_cmt_seq'].value;
		document.comment_form.boardId.value		=	document.forms[formName].elements['comment_board_id'].value;
		document.comment_form.boardLevel.value	=	document.forms[formName].elements['comment_board_level'].value;
		document.comment_form.content.value		=	document.forms[formName].elements['comment_content'].value;
		document.comment_form.nickname.value	=	document.forms[formName].elements['comment_nickname'].value;
		document.comment_form.userId.value		=	document.forms[formName].elements['comment_user_id'].value;
		document.comment_form.feelId.value		=	document.forms[formName].elements['comment_feel_id'].value;
		//2010.01.14 k.h.k : 덧글입력은 무조건 1page로 이동
		document.comment_form.cmtPage.value = 1;
		
		AjaxBoardManager.insertComment(divElement, url, "comment_form", formName);
	},

	insertComment1 : function(url, formName, cmd, divElement, method, content_id)
	{
		if(userId == '')
		{
			Common.loginConfirmDialog(message["confirm.login.comment.msg"]);
			return;
		}
		charLengthCheck(message["board.comment.length"], formName, content_id);
		if(trim(document.forms[formName].elements[content_id].value) == '')
		{
			Common.alertDialog(message["board.alert.insert.comment.content_input"]);
			return;
		}

		document.comment_form.action			=	url;
		document.comment_form.cmd.value			=	document.forms[formName].elements['comment_cmd1'].value;
		document.comment_form.cg.value			=	document.forms[formName].elements['comment_cg1'].value;
		document.comment_form.seq.value			=	document.forms[formName].elements['comment_seq1'].value;
		document.comment_form.cmtSeq.value		=	document.forms[formName].elements['comment_cmt_seq1'].value;
		document.comment_form.boardId.value		=	document.forms[formName].elements['comment_board_id1'].value;
		document.comment_form.boardLevel.value =	document.forms[formName].elements['comment_board_level1'].value;
		document.comment_form.content.value		=	document.forms[formName].elements['comment_content1'].value;
		document.comment_form.nickname.value	=	document.forms[formName].elements['comment_nickname1'].value;
		document.comment_form.userId.value		=	document.forms[formName].elements['comment_user_id1'].value;
		document.comment_form.feelId.value		=	document.forms[formName].elements['comment_feel_id1'].value;
		//2009.10.27 k.h.k : 덧글의 덧글 작성 후 작성시 페이지로 GO~!
		document.comment_form.cmtPage.value		=	document.forms[formName].elements['comment_page1'].value;
		
		AjaxBoardManager.insertComment1(divElement, url, "comment_form", formName);
	},

	// 코멘트 페이징 숫자를 눌렀을 시 처리
	comment_list : function(url, formName, divElement, goPage) {
		//alert(divElement);
		var postData = "";
		postData += "cmd=ajax_cmt_list";
		postData += "&cmtPage=" + goPage;
		postData += "&seq=" + $(formName).seq.value;
		//postData += "&tid=" + $(formName).tid.value;
		AjaxBoardManager.comment_list(divElement, url, formName, postData);
		
		//2010.01.06 k.h.k : cmtPage parameter setting for update, delete
		document.comment_form.cmtPage.value = goPage;
	},
	
	//검색 요청시 처리
	search : function(url, formName, divElement)
	{
		$(formName).word.value = document.list_form.checkWord.value;
		$(formName).searchCndt.value = document.list_form.search_cndt.value;

		if($(formName).word.value == '')
		{
			alert_module.show('alert', {
				msg : message["board.search.select_item"]
			});				
			return;
		}
		
		$(formName).cmd.value = "ajax_list";
		$(formName).page.value = "1";
		$(formName).orderBy.value = "";
		//if($(formName).word.value != "") {
		//	$('searchResult').innerHTML = "\"<span class=\"searchWord\">" + $(formName).word.value + "</span>\"" + message["board.list.search.result"];

		//	Board.show('searchResult');
		//} else {
		//	Board.hide('searchResult');
		//}

		AjaxBoardManager.list(divElement, url, formName);
	},

	// 덧글 답변 팝업 생성.
	//showCommentForm : function(formName, cmd, seq, cmtSeq, boardId, boardLevel, tid, nickname, userId, content_id, tp)
	showCommentForm : function(formName, cmd, seq, cmtSeq, boardId, boardLevel, tid, nickname, userId, content_id, tp, cmtPage)
	{
	  	Board.hiddenCommentFormForEdit(formName);
		Board.hiddenCommentForm();
    
        var cmt_input_position = document.getElementById('cmt_input_position_' + tp + cmtSeq);
        var input_cmt = cmt_input_position.appendChild(document.getElementById('input_cmt'));
        var input_cmt_title = document.getElementById('input_cmt_title');


        input_cmt.style.display = 'block';
        cmt_input_position.style.display = 'block';

		document.forms[formName].elements['comment_cmd1'].value			=	cmd;
		document.forms[formName].elements['comment_seq1'].value			=	seq;
		document.forms[formName].elements['comment_cmt_seq1'].value		=	cmtSeq;
		document.forms[formName].elements['comment_board_id1'].value	=	boardId;
		document.forms[formName].elements['comment_board_level1'].value	=	boardLevel;
		document.forms[formName].elements['comment_nickname1'].value	=	nickname;
		document.forms[formName].elements['comment_user_id1'].value		=	userId;
		document.forms[formName].elements['comment_feel_id1'].value		=	'';
		//2009.10.27 k.h.k : 덧글의 덧글 작성 후 작성시 페이지로 GO~!
		document.forms[formName].elements['comment_page1'].value		=	cmtPage;
		
		if(content_id != '')
		{
			document.forms[formName].elements['comment_content1'].value	=	$(content_id).value;
		}
		else
		{
			document.forms[formName].elements['comment_content1'].value	=	'';
		}
	},
	// 덧글수정창보이기
    showCommentFormForEdit : function(formName, cmd, seq, cmtSeq, boardId, boardLevel, tid, nickname, userId, content_id, tp, cmtPage, replyYn)
    {
        Board.hiddenCommentForm();

        // 모든 히든된 덧글 내용 표시처리
        var cmt_prev_position_array = document.getElementsByName('cmt_input_prev_position');
        for(i=0;i<cmt_prev_position_array.length;i++){
            cmt_prev_position_array[i].style.display = 'block';
        }
        
        // 모든 히든된 덧글의 덧글 버튼 표시처리
        var reple_btns_prev_position_array = document.getElementsByName('reple_btns_prev_position');
        for(i=0;i<reple_btns_prev_position_array.length;i++){
            reple_btns_prev_position_array[i].style.display = 'block';
        }
        
        // 현재 클릭한 덧글 내용 히든처리
        var cmt_prev_position = document.getElementById('cmt_input_prev_position_' + cmtSeq);
        cmt_prev_position.style.display = 'none';
        
        // 현재 클릭한 덧글의 덧글 버튼 히든처리
        var obj_reple_btns = document.getElementById('reple_btns_' + cmtSeq);
        obj_reple_btns.style.display = 'none';

        // 덧글수정창표시 처리
        var cmt_target_position = document.getElementById('cmt_input_target_position_' + cmtSeq);
        var edit_cmt = cmt_target_position.appendChild(document.getElementById('edit_cmt'));
        var textarea = document.getElementById("comment_content2");
        // 수정창크기조절
        var isIE6  = (navigator.appVersion.indexOf("MSIE 6") != -1) ? true : false;
        
        // ie6 일 때
        if(isIE6){
            if(replyYn == "Y"){
	           	edit_cmt.style.width = "400px";
	            edit_cmt.style.position = "relative";
	            edit_cmt.style.float = "right";
	            edit_cmt.style.paddingLeft = "160px";
	            edit_cmt.style.marginTop = "-60px";
	            textarea.style.width = "320px";
	        } else {	
	            edit_cmt.style.width = "450px";
	            edit_cmt.style.position = "relative";
	            edit_cmt.style.float = "right";
	            edit_cmt.style.paddingLeft = "160px";
	            edit_cmt.style.marginTop = "-60px";
	            textarea.style.width = "360px";
	        }
        // 아닐 때
        }else{
            //2011.07.07 k.h.k : relative -> absolute(chrome위치조정)
	       	if(replyYn == "Y"){
	            edit_cmt.style.width = "400px";
	            edit_cmt.style.position = "absolute";
	            edit_cmt.style.float = "right";
	            textarea.style.width = "270px";
	        } else {
	            edit_cmt.style.width = "450px";
	            edit_cmt.style.position = "absolute";
	            edit_cmt.style.float = "right";
	            textarea.style.width = "320px";
	        }
        }
        edit_cmt.style.display = 'block';
        cmt_target_position.style.display = 'block';

        document.forms[formName].elements['comment_cmd2'].value         =   cmd;
        document.forms[formName].elements['comment_seq2'].value         =   seq;
        document.forms[formName].elements['comment_cmt_seq2'].value     =   cmtSeq;
        document.forms[formName].elements['comment_board_id2'].value    =   boardId;
        document.forms[formName].elements['comment_board_level2'].value =   boardLevel;
        document.forms[formName].elements['comment_nickname2'].value    =   nickname;
        document.forms[formName].elements['comment_user_id2'].value     =   userId;
        document.forms[formName].elements['comment_feel_id2'].value     =   '';
        document.forms[formName].elements['comment_page2'].value        =   cmtPage;
        document.forms[formName].elements['comment_content2'].value =   $(content_id).value;
    },
    // 덧글 수정창 숨김
    hiddenCommentFormForEdit : function(formName)
    {
        if(document.forms[formName].elements['comment_cmt_seq2']!=null){
            // 원래창 보여주기
            var cmt_prev_position = document.getElementById('cmt_input_prev_position_' + document.forms[formName].elements['comment_cmt_seq2'].value);
            if(cmt_prev_position!=null){
                cmt_prev_position.style.display = 'block';
            }
            
            // 덧글의 덧글 버튼 보여주기
            var obj_reple_btns = document.getElementById('reple_btns_' + document.forms[formName].elements['comment_cmt_seq2'].value);
            if(obj_reple_btns!=null){
                obj_reple_btns.style.display = 'block';
            }
        }
            
        var edit_cmt = document.getElementById("edit_cmt");
        var cmt_edit_position = (edit_cmt != null ? document.body.appendChild(edit_cmt) : null);
        var emoticon_div = document.getElementById("emoticon_div");

        if (edit_cmt != null) edit_cmt.style.display = "none";
        if (cmt_edit_position != null && /^cmt_edit_position/.test(cmt_edit_position.id)) cmt_edit_position.style.display = "none";
        if (emoticon_div != null) emoticon_div.style.display = "none";

    },
    // 덧글 수정하기
    updateComment : function(url, formName, cmd, divElement, method, content_id)
    {
        Board.hiddenCommentForm();
        if(userId == '')
        {
            Common.loginConfirmDialog(message["confirm.login.comment.msg"]);
            return;
        }
        charLengthCheck(message["board.comment.length"], formName, content_id);
        if(trim(document.forms[formName].elements[content_id].value) == '')
        {
            Common.alertDialog(message["board.alert.insert.comment.content_input"]);
            return;
        }

        document.comment_form.action            =   url;
        document.comment_form.cmd.value         =   document.forms[formName].elements['comment_cmd2'].value;
        document.comment_form.seq.value         =   document.forms[formName].elements['comment_seq2'].value;
        document.comment_form.cmtSeq.value      =   document.forms[formName].elements['comment_cmt_seq2'].value;
        document.comment_form.boardId.value     =   document.forms[formName].elements['comment_board_id2'].value;
        document.comment_form.boardLevel.value =    document.forms[formName].elements['comment_board_level2'].value;
        document.comment_form.content.value     =   document.forms[formName].elements['comment_content2'].value;
        document.comment_form.nickname.value    =   document.forms[formName].elements['comment_nickname2'].value;
        document.comment_form.userId.value      =   document.forms[formName].elements['comment_user_id2'].value;
        document.comment_form.feelId.value      =   document.forms[formName].elements['comment_feel_id2'].value;
        document.comment_form.cmtPage.value     =   document.forms[formName].elements['comment_page2'].value;

        AjaxBoardManager.updateComment(divElement, url, "comment_form", formName);
    },
	// 덧글 답변 팝업 숨김
    hiddenCommentForm : function()
    {
        var input_cmt = document.getElementById("input_cmt");
        //var cmt_input_position = (input_cmt != null ? document.body.appendChild(input_cmt) : null);
        var cmt_input_position = (input_cmt != null ? input_cmt.parentNode : null);
        var emoticon_div = document.getElementById("emoticon_div");

        if (input_cmt != null) input_cmt.style.display = "none";
        if (cmt_input_position != null && /^cmt_input_position_/.test(cmt_input_position.id)) cmt_input_position.style.display = "none";
        if (emoticon_div != null) emoticon_div.style.display = "none";
    },
	// 덧글 & 덧글 toggle
	showCommentOpen : function(cmtSeq)
	{
		var cmt_toggle_position = document.getElementById('cmt_toggle_position_' + cmtSeq);
		
		//if(cmt_toggle_position == null){
		//	Common.alertDialog(message["board.alert.insert.comment.content_input"]);
		//	return;	
		//}

		if (cmt_toggle_position.style.display == 'none') {
			cmt_toggle_position.style.display = 'block';
		} else {
			cmt_toggle_position.style.display = 'none';
		} 
	},
	
	// 덧글 추천하기
	cmt_recmd: function(url, formName, cmd, cmt_seq)
	{
		if(userId == '') {
			alert_module.show('confirm', {
	   			msg : message["board.alert.login.msg"],
		   			ok_func : function () {
						location.href = "/login.do?cmd=login&nextUrl=" + NEXT_URL;
						return;
		   			},
		   			cancel_func : function () {
		   				return;
		   			}
	   		});
	   		return;
		}
		$(formName).cmd.value = cmd;
		$(formName).cmtSeq.value = cmt_seq;
		AjaxBoardManager.cmt_recmd(url, formName, cmt_seq);
	},
	
	// 덧글 삭제.
    deleteComment:function(url, formName, cmd, divElement, seq, cmtSeq, boardId, boardLevel, tid, replCnt) {
    	//2011.06.21 k.h.k : 삭제시 다른 덧글들의 덧글입력, 수정 등을 초기화한다.
		Board.hiddenCommentFormForEdit(formName);
		Board.hiddenCommentForm();
		
        //alert(AjaxBoardManager.getReplyCount(url, 'cmd=ajax_cmt_reply_count&boardId='+boardId+"&boardLevel="+boardLevel));
        alert_module.show('confirm', {
            msg : message["board.confirm.comment.delete"],
                ok_func : function () {
                    var postData = "";
                    postData += "cmd="+cmd;
                    postData += "&seq=" + seq;
                    postData += "&cmtSeq=" + cmtSeq;
                    postData += "&replCnt=" + replCnt;
                    postData += "&boardLevel=" + boardLevel;
                    postData += "&cmtPage=" + document.comment_form.cmtPage.value; //2010.01.06 k.h.k : go current page
                    AjaxBoardManager.deleteComment(divElement, url, formName, postData);
                    return;
                },
                cancel_func : function () {
                    return;
                }
        });
    },
	
	// 수정요청시 호출
	edit: function(url, formName, cmd) {
		if(board_userId != userId && adminYn != 'Y') {
			Common.alertDialog(message["board.alert.grant.msg"]);
			return;
		}
		$(formName).cmd.value = cmd;
		$(formName).action = url;
		$(formName).method = "post";
		$(formName).submit();
	},
	
	// 게시물 삭제 요청시 처리
	del: function(url, formName, boardId, boardLevel, tid) {
		var postData = 'cmd=ajax_reply_count&boardId=' + boardId + "&boardLevel=" + boardLevel;
		//alert(postData);
		AjaxBoardManager.getReplyCount(url, postData);
		
		if(confirm(message["board.confirm.list.delete"])) {
			if(deleteFlag) {
				Common.alertDialog(message["board.alert.list.reply"]);
				deleteFlag = false;
				return true;
			}
			$(formName).cmd.value="delete";
			$(formName).action = url;
			$(formName).submit();
			return true;
		}
	},

	// 취소 버튼 클릭시
	cancel: function(url, formName, cmd, method) {
		$(formName).cmd.value = "list";
		if ($(formName).seq)    $(formName).seq.value = "";    //리스트로 나가는 경우 초기화
		$(formName).action = url;
		$(formName).method = "post";
		$(formName).submit();
	},
	
	//리스트 페이지에서의 페이징숫자를 눌렀을때 처리
    page : function(url, formName, divElement, goPage) {
        $(formName).cmd.value = "ajax_list";
        $(formName).page.value = goPage;
        AjaxBoardManager.list(divElement, url, formName);
    },
    
    //엘리먼트 숨기기
	hide : function(divElement) {
		if($(divElement)) {
			$(divElement).style.display = 'none';
		}
	},
	
	//엘리먼트 보기게 하기
	show : function(divElement) {
		if($(divElement)) {
			$(divElement).style.display = 'block';
		}
	},
	//카테고리 목록 가져오기
	categoryChange : function(url, formName, divElement, category) {
		$(formName).cg.value = category;
		$(formName).cmd.value ="ajax_list";
		$(formName).orderBy.value = "";
		AjaxBoardManager.list(divElement, url, formName);
	},
	// 레이어팝업
	popUp: function(layerName){
        if (layerName == 'entryGentlemanshow') {
            ysr_modal.show('entryGentlemanshow');
        } else if (layerName == 'entryGentlemanshowError') {
            ysr_modal.show('entryGentlemanshowError');
        } else if (layerName == 'entryGentlemanshowOk') {
            ysr_modal.show('entryGentlemanshowOk');
        } 
    },
    // 길이체크하기
    checkLength : function(length_limit, formName, contentObj , textname) {
        
        var message = document.forms[formName].elements[contentObj].value;
        
        message = message.replace(/\r\n$/, ""); 
        var length = Board.calculateMsglen(message);
        
        $(textname).innerHTML = length;
        if(length > length_limit) {
            alert("내용은 " + length_limit + "를 초과할수없습니다.");
            $(contentObj).blur();
            $(contentObj).value = Board.assertMsglen(message, length_limit, formName, contentObj);
        }
    },
    // 길이측정
    calculateMsglen : function(message)
    {
        
        var nbytes = 0;
        var i = 0;
    
        for (i=0; i<message.length; i++) {
            var ch = message.charAt(i);
            if(escape(ch).length > 4) {
                nbytes += 2;
            } else if (ch == '\n') {
                if (message.charAt(i-1) != '\r') {
                    nbytes += 1;
                }
            } else if (ch == '<' || ch == '>') {
                nbytes += 4;
            } else {
                nbytes += 1;
            }
        }
    
        return nbytes;
    },
    assertMsglen : function(message, maximum, formName, contentObj)
    {
        var inc = 0;
        var nbytes = 0;
        var msg = "";
        var msglen = message.length;
        var i = 0;
    
        //alert(message + '\'s length : '+msglen);
        for (i=0; i<msglen; i++) {
            inc = 0;
            var ch = message.charAt(i);
            if (escape(ch).length > 4) {
                inc = 2;
            } else if (ch == '\n') {
                if (message.charAt(i-1) != '\r') {
                    inc = 1;
                }
            } else if (ch == '<' || ch == '>') {
                inc = 4;
            } else {
                inc = 1;
            }
            if ((nbytes + inc) > maximum) {
                //alert(i + ' ? ' + nbytes + ' + ' + inc + ' > ' + maximum + ' '+ msg);
                break;
            }
            nbytes += inc;
            msg += ch;
        }
        //$('textlimit').innerHTML = nbytes;
    
        return msg;
    },
    insertEntry : function(url, formName, cmd){
        var checkFlg = false;
        var obj = document.getElementsByName("nickName");
        // Name이 receiver인것들의 배열
        var len = obj.length;
        // 배열로 만들어 놓은 obj 수 체크
        for (var i =0;i<len ;i++ ){
            if(obj[i].checked == true){
                checkFlg = true;
                break;
            }
        }

        if(!checkFlg){
            alert("신청서를 받을 사람을 선택하세요.");
            return;
        }
        
        // 내용입력여부확인
        var formObj = document.getElementById(formName);
        if(formObj.content.value == ''){
            alert("내용을  입력하세요");
        } else {
            url = url + "?cmd="+cmd;
            //  Ajax로 처리.
            new Ajax.Request(url, {
                method : 'POST',
                parameters:Form.serialize($(formName)),
                encoding : 'UTF-8',
                onComplete : function(xmlHttp) {
                    var resultString = xmlHttp.responseText;
                    if(resultString == "SUCCESS") {
                        //성공시 처리.
                        ysr_modal.close();
                        Board.popUp('entryGentlemanshowOk')
                    } else {
                        //실패시 처리.    
                        ysr_modal.close();
                        Board.popUp('entryGentlemanshowError')
                    }
                }
            });
        }
    },
    // 리스트 페이지에서 덧글 Ajax로 가져오기
    initComment : function(url, formName, divElement, goPage) {
        var postData = "";
        postData += "cmd=ajax_cmt_list";
        postData += "&cmtPage=" + goPage;
        postData += "&seq=" + $(formName).seq.value;
        //postData += "&tid=" + $(formName).tid.value;
        AjaxBoardManager.comment_list(divElement, url, formName, postData);
    }
}
