// ³«¼­ ³îÀÌ °ü·Ã ÀÚ¹Ù ½ºÅ©¸³Æ® 
if( typeof sourceUpdater == 'undefined')
	var sourceUpdater = new updateSourceList();
if( typeof updateNoriListObj == 'undefined')
	var updateNoriListObj = new updateNoriList();

function RotateSource(type, flow, categoryid){
	var page = $('sourcePage').value;
	var pageSize = 10;
	var SourceCount = $('totalSourceCount').value;
	var totalPage = parseInt(SourceCount / pageSize) + 1;
	if(SourceCount % pageSize == 0)
		totalPage--;
	if( flow == 'pres' && page > 1)
		page--;

	else if(flow == 'next' && page < totalPage ){
		page++;
	}
	if(categoryid != null && categoryid !='' && categoryid != 'undefined' ){
		sourceUpdater.setCategoryid(categoryid);
	}
	sourceUpdater.setNowPage(page);
	sourceUpdater.setTotalPage(totalPage);
	$('sourcePage').value = page;
	var url ="/nori.nhn";
	var param = "m=getAjaxSourceList&sourcePage=" + page + "&sourceSortType=" + $('sourceSortType').value + "&categoryid=" + categoryid;
	myVote = new HAjax.Request(
	url, 
	{
		parameters: param,
		onComplete: sourceUpdater.update
	});
}

function updateSourceList(){
	var nowPage = 0;
	var totalPage = 0;
	var categoryid = 0;
	
	this.setNowPage = function(pNowPage){
		nowPage = pNowPage;
	}
	
	this.setTotalPage = function(pTotalPage){
		totalPage = pTotalPage;
	}
	
	this.setCategoryid = function(pCategoryid){
		categoryid = pCategoryid;
	}
	
	
	this.update = function(originalRequest){
		var jsonData = eval('(' + originalRequest.responseText + ')');
		var updatePosition = $('sourceList').getElementsByTagName('td');
		var updateContents = "";
		for(var i = 0; i < jsonData.length; i++){
			updateContents += '<a href="' + url_story +'/nori.nhn?m=doNackseo&sourceid='+ jsonData[i].sourceid + '&sourceSortType='+ $('sourceSortType').value + '&sourcePage='+ $('sourcePage').value + '&categoryid='+ categoryid +'"><strong>'+ jsonData[i].title + '</strong><span>('+ jsonData[i].totaldoccnt + ')</span></a>';
			if(i < (jsonData.length-1))			
				updateContents += '<img src="'+ url_img +'/story/nori/bar06.gif" width="1" height="20" alt="bar">';
			else
				updateContents += '<img style="visibility:hidden;" src="'+ url_img +'/story/nori/bar06.gif" width="1" height="20" alt="bar">';
		}
		updatePosition[1].innerHTML = updateContents;
		if( nowPage == 1 && totalPage == 1){
			$('noriSourcePrev').src = url_img + '/story/nori/btn_prev03.gif';
			$('noriSourceNext').src = url_img + '/story/nori/btn_next03.gif';
		}else if( nowPage == 1 && nowPage < totalPage){
			$('noriSourcePrev').src = url_img + '/story/nori/btn_prev03.gif';
			$('noriSourceNext').src = url_img + '/story/nori/btn_next03_on.gif';
		}
		else if( nowPage > 1 && nowPage < totalPage){
			$('noriSourcePrev').src = url_img + '/story/nori/btn_prev03_on.gif';
			$('noriSourceNext').src = url_img + '/story/nori/btn_next03_on.gif';
		}else if( nowPage == totalPage){
			$('noriSourcePrev').src = url_img + '/story/nori/btn_prev03_on.gif';
			$('noriSourceNext').src = url_img + '/story/nori/btn_next03.gif';
		}
	}
}

function getSourceList(type,categoryid){
	$('sourcePage').value = 1;
	if( type == "go"){
		$('sourceSortType').value = 'go';
		RotateSource(type,'',categoryid);
		$('dateSort').innerHTML = 'µî·Ï¼ø';
		$('goSort').innerHTML = '<b>ÀÎ±â¼ø</b>';
		$('noriMainArw01').src = url_img + '/story/bu_arw07.gif';
		$('noriMainArw02').src = url_img + '/story/bu_arw02.gif';
		
	}
	else if( type == "createdt"){
		$('sourceSortType').value = 'createdt';
		RotateSource(type,'',categoryid);
		$('dateSort').innerHTML = '<b>µî·Ï¼ø</b>';
		$('goSort').innerHTML = 'ÀÎ±â¼ø';
		$('noriMainArw01').src = url_img + '/story/bu_arw02.gif';
		$('noriMainArw02').src = url_img + '/story/bu_arw07.gif';
	}
}

////////////////////////////////////////////////////////////////////////////
function randomNoriComment(){
	var comment=['±â¹ßÇÑ ¾ÆÀÌµð¾î! ÃÖ°í¿¹¿ä~','´ç½ÅÀ» ³«¼­°èÀÇ º»ÁÂ·Î ÀÓ¸íÇÕ´Ï´Ù!','¾î¶»°Ô ÀÌ·± »ý°¢À»?!! ³«¼­ ÃµÀéµ¥..','¿À´ÃºÎÅÍ Àü ´ç½Å¸¸ ÀÀ¿øÇÒ·¡¿ä~','³«¼­¿Õ ¿¹°¨! ¸ðµÎµé ±äÀåÇÏ¶ó!'];
	var randno = Math.floor((Math.random() * comment.length));
	return comment[randno];
}


// ´ñ±Û Ãß°¡ 
function insertNoriComment(docid, loginid, restrict){
	if( restrict == 'true'){
		location.href='/nori.nhn?m=writeCommentUsingAjax';
		return;
	}
	var content = $('textarea' + docid).value;
	if(isLoggedIn()){
		if (getRealSize(content) == 0) {
			content = randomNoriComment();
			$('textarea' + docid).value = content;
		}
		if (getStringSize(content) > 40) {
			alert("µ¡±ÛÀº 20ÀÚ ÀÌ³»·Î ³²°ÜÁÖ¼¼¿ä.");
			return;
		}
		$('m'+ docid ).value = "writeCommentUsingAjax";		
		updateNoriListObj.setdocid(docid);
		updateNoriListObj.setLoginid(loginid);
		var url ="/nori.nhn";
		var param = Form.serialize('noriCommentForm'+ docid);
		$('textarea' + docid).value = '';
		var insertcmt = new HAjax.Request(
		url, 
		{
			requestHeaders : [ 'ajax','true' ],
			method: 'post', 
			parameters:param,
			onComplete: updateNoriListObj.insertUpdate
		});
	}
}
// ´ñ±Û »èÁ¦
function deleteNoriComment(docid, comid, loginid){
	updateNoriListObj.setdocid(docid);
	updateNoriListObj.setLoginid(loginid);
	$('m'+ docid ).value = "deleteCommentUsingAjax";
	var param = Form.serialize('noriCommentForm'+ docid);
	param += ( '&comid=' + comid );
	param += ( '&writeuid=' + ($('writeUser' + comid ).value) );
	var url ="/nori.nhn";
	var insertcmt = new HAjax.Request(
		url, 
		{
			requestHeaders : [ 'ajax','true' ],
			method: 'post', 
			parameters:param,
			onComplete: updateNoriListObj.deleteUpdate
		});
}

// ¾îµå¹Î µ¡±Û »èÁ¦ 
function adminDeleteNoriComment(docid, comid ,loginid){
	if(confirm('°ü¸®ÀÚ »èÁ¦ ¸ðµåÀÔ´Ï´Ù.\n»èÁ¦ÇÏ½Ã°Ú½À´Ï±î?')){
		deleteNoriComment(docid, comid, loginid);
	}
}

// ´ñ±Û ÆäÀÌÁö ¾ÕÆäÀÌÁö È¤Àº µÞÆäÀÌÁö ¸ñ·ÏÀ» º¸¿©ÁØ´Ù. 
function shiftNoriComment(type, docid, loginid){
	var nowPage = $('commentPage' + docid).value;
	var lastPage = $('lastPage' + docid).value;
	if( nowPage ==1 && type == 'pres'){
		alert('Ã¹ ÆäÀÌÁöÀÔ´Ï´Ù.');
		return;
	}
	if( nowPage == lastPage && type == 'next'){
		alert('¸¶Áö¸·  ÆäÀÌÁöÀÔ´Ï´Ù.');
		return;
	}
	if( type == 'pres')
		$('commentPage' + docid).value = (--nowPage);
	else if( type == 'next')
		$('commentPage' + docid).value = (++nowPage);
	
	$('m'+ docid ).value = "getCommentListUsingAjax";
	var url ="/nori.nhn";
	var param = Form.serialize('noriCommentForm'+ docid);
	param += ( '&commentcnt=' + $('commentcnt' + docid).value);
	updateNoriListObj.setdocid(docid);
	updateNoriListObj.setLoginid(loginid);
	var insertcmt = new HAjax.Request(
		url, 
		{
			requestHeaders : [ 'ajax','true' ],
			method: 'post', 
			parameters: param,
			onComplete: updateNoriListObj.shiftUpdate
		});
	
}
// ´ñ±Û  update¸¦ ÃÑ°ýÇÏ´Â °´Ã¼ 
function updateNoriList(){
	var docid = 0;
	var loginid = "";
	var noneComment = '<li class="nonelist"><table border="0" cellpadding="0" cellspacing="0"><tr valign="top"><td class="tlt"><img src="' + url_img + '/story/nori/@tmp36.gif" width="40" height="37" alt=""></td><td class="txt">µî·ÏµÈ ÃßÃµ ±ÛÀÌ ¾ø½À´Ï´Ù.<br>Ã¹ ¹øÂ° ÃßÃµ ±ÛÀ» ³²°Üº¸¼¼¿ä.</td></tr></table></li>';
	var isAdmin = false;
	
	this.setAdmin = function(){
		isAdmin = true;
	}
	
	this.setdocid = function(pdocid){
		docid = pdocid;
	}
	this.setLoginid = function(ploginid){
		loginid = ploginid;
	}
	
	getMenu = function( writenick , writeuid ){
		var menu = '<span style="cursor:hand;" onmouseover="this.style.textDecoration=\'underline\';" onmouseout="this.style.textDecoration=\'none\';" onclick="avpersonalmenu_showMenu(\''+ writeuid + '\',\'' + writeuid + '\');">' + writenick + '</span>';
		return menu;
	}
	// ´ñ±Û ¸ñ·ÏÀ»  ¾÷µ¥ÀÌÆ®		
	update = function(originalRequest){
		var jsonData = eval('(' + originalRequest.responseText + ')');
		var contents = "";
		var error = "";
		if( jsonData.length == 0 ){
			$('commentArea'+ docid).innerHTML = noneComment;
		}
		if(jsonData.error != null){
			alert(jsonData.error);
			error = "true";
		}else{
			for(var i = 0; i < jsonData.length; i++){
				contents += '<li><table border="0" cellpadding="0" cellspacing="0"><tr valign="top"><td class="tlt">' + jsonData[i].content;
				if( loginid != null && jsonData[i].writeuid == loginid){
					contents += '<a href="javascript:deleteNoriComment('+ docid + ',' + jsonData[i].comid + ',' + '\''+ loginid + '\'' + ');"><img src="' + url_img + '/story/nori/ico_delete.gif"/></a>';
				}
				else{
					if(isAdmin == true){
						contents += '<a href="javascript:adminDeleteNoriComment('+ docid + ',' + jsonData[i].comid + ',' + '\''+ loginid + '\'' + ');"><img src="' + url_img + '/story/btn_del.gif" alt="»èÁ¦"/></a>';
					}
				}
				contents += '</td><td class="user">' + getMenu(jsonData[i].writenick,jsonData[i].writeuid) + '</td>';
				contents += ('<input type="hidden" name="writeUser" id="writeUser' + jsonData[i].comid +'" value="'+ jsonData[i].writeuid + '">');
				contents += ('<input type="hidden" name="comid" id="comid' +jsonData[i].comid+'" value="'+jsonData[i].comid+'">');
				contents +=  '</tr></table></li>';
			}
			if(jsonData.length > 0)
				$('commentArea'+ docid).innerHTML = contents;
		}
		return error;
	}
	
	// ÃßÃµ update
	this.ReccomendAlert = function (originalRequest){
	var jsonData = eval('(' + originalRequest.responseText + ')');
	if(jsonData.result == "ok" ){
		if($('gocnt'+ docid ) != null){
			var gocnt = $('noriRecommand'+ docid).getElementsByTagName('a');
			gocnt[0].innerHTML = ++($('gocnt'+docid).value);
			alert( "ÃßÃµÇÏ¼Ì½À´Ï´Ù." );	
		}
	}
	else if(jsonData.result == "login" )
		alert("·Î±×ÀÎ ÇÏ¼Å¾ß ÇÕ´Ï´Ù.");
	else if(jsonData.result == "oneMore")
		alert("ÀÌ¹Ì ÃßÃµÇÏ¼Ì½À´Ï´Ù.");
	}
	
	// ÆäÀÌÂ¡ Ã³¸® ¾÷µ¥ÀÌÆ® 
	updatePaging = function(type){
		$('commentPage' + docid).value = 1;
		var commentcnt;
		
		if( type == 'insert' ){
			commentcnt = ++($('commentcnt' + docid).value);
		}else if( type == 'delete'){
			commentcnt = --($('commentcnt' + docid).value);
		}
	
		if( commentcnt == 0 )
			$('commentPaging' + docid).style.display = "none";
		else
			$('commentPaging' + docid).style.display = "inline";
		
		var totalPage = parseInt(commentcnt / 7);
		if((commentcnt % 7) != 0)
			++totalPage;
			
		$('lastPage' + docid).value = totalPage;
		var navigation = $('commentPaging' + docid);
		var NowPage = navigation.getElementsByTagName('a');
		NowPage[0].innerHTML = '1';
		NowPage[1].innerHTML = totalPage;
	}
	
	// ÀÎ¼­Æ®½Ã Ã³¸® 
	this.insertUpdate = function(originalRequest){
		var result = update(originalRequest);
		if( result != 'true' )
			updatePaging('insert');
	}
	// ÆäÀÌÁö ÀÌµ¿½Ã Ã³¸® 
	this.shiftUpdate = function(originalRequest){
		update(originalRequest);
		var navigation = $('commentPaging' + docid);
		var NowPage = navigation.getElementsByTagName('a');
		NowPage[0].innerHTML = $('commentPage' + docid).value;
	}
	// ´ñ±Û Áö¿üÀ» ¶§ Ã³¸® 
	this.deleteUpdate = function(originalRequest){
		update(originalRequest);
		updatePaging('delete');
	}

}
////////////////////////////////////////////////////////////////////
function NoriRecommend(docid,rcvuid,snduid){
	if(isLoggedIn()){
		var url ="/nori.nhn";
		var param = "m=ajaxRecommend&docid=" + docid + "&rcvuid=" + rcvuid +"&snduid=" + snduid;
		updateNoriListObj.setdocid(docid);
		var recommend = new HAjax.Request(
			url, 
			{
				requestHeaders : [ 'ajax','true' ],
				method: 'post', 
				parameters: param,
				onComplete: updateNoriListObj.ReccomendAlert
			});
	}
}
function goRandomDoNackseo(sourceCount){
	if( sourceCount == null || typeof sourceCount == 'undefined'){
		var sourceCount = 10;
	}
	var randNum = (Math.floor(Math.random() * sourceCount)) + 1;
	var randPage = parseInt(randNum / 10);
	if( (randNum % 10) != 0)
		randPage++;
	document.location.href = '/nori.nhn?m=doNackseo&sourcePage=' + randPage;
}	
