//--------------------------------- More Comment Order By CommentId
function moreComment() {
		$('more-comment').getElementsByTagName('span')[0].style.display = 'none';
		$('more-comment').getElementsByTagName('span')[1].innerHTML = $('loadding-div').innerHTML;
		var pars = 'ajax&moreComment&userid=' + userid + '&maxCommentId=' + maxCommentId + "&d=" + (new Date());
	    new Ajax.Request(
                    '?',
                    {method: 'post', parameters: pars, onSuccess: moreCommentSuccess, onComplete: moreCommentComplete}
                    );
}

function moreCommentComplete(originalRequest) {
	$('more-comment').getElementsByTagName('span')[0].style.display = '';
	$('more-comment').getElementsByTagName('span')[1].innerHTML = '';
}

function moreCommentSuccess(originalRequest) {
	new Insertion.Bottom('comment-list', originalRequest.responseText);
	try{fullFileBooks();}catch(e){};
}

//--------------------------------- More Comment Order By ReviewDate
function moreCommentReview() {
		$('more-comment').getElementsByTagName('span')[0].style.display = 'none';
		$('more-comment').getElementsByTagName('span')[1].innerHTML = $('loadding-div').innerHTML;
		var pars = 'ajax&moreComment&userid=' + userid + '&maxReviewDate=' + maxReviewDate + "&d=" + (new Date());
	    new Ajax.Request(
                    '?',
                    {method: 'post', parameters: pars, onSuccess: moreCommentSuccess, onComplete: moreCommentComplete}
                    );
}

//--------------------------------- More Article Comment Order By CommentId
function moreArticleComment() {
		$('more-comment').getElementsByTagName('span')[0].style.display = 'none';
		$('more-comment').getElementsByTagName('span')[1].innerHTML = $('loadding-div').innerHTML;
		var pars = 'ajax&moreComment&userid=' + userid + '&articleId=' + articleId + '&maxCommentId=' + maxCommentId +
			"&d=" + (new Date());
	    new Ajax.Request(
                    '?',
                    {method: 'post', parameters: pars, onSuccess: moreCommentSuccess, onComplete: moreCommentComplete}
                    );
}

// -------------------------------- Delete Comment
function deleteByArticleUser(commentId) {
	var pars = 'ajax&deleteByArticleUser&userid=' + userid + '&commentId=' + commentId + "&d=" + (new Date());
	new Ajax.Request(
                    '?',
                    {method: 'post', parameters: pars, onSuccess: deleteCommentSuccess}
                    );
}

function deleteByCommentUser(commentId) {
	var pars = 'ajax&deleteByCommentUser&userid=' + userid + '&commentId=' + commentId + "&d=" + (new Date());
	new Ajax.Request(
                    '?',
                    {method: 'post', parameters: pars, onSuccess: deleteCommentSuccess}
                    );
}

function deleteCommentSuccess(originalRequest) {
	Element.remove('comment' + originalRequest.responseText.strip());
}

//------------------------------ Update Comment Review
function updateReview(commentId) {
	var pars = 'ajax&getComment&name=commentReview&commentId=' + commentId + "&d=" + (new Date());
	new Ajax.Request('?',{
		method: 'post', 
		parameters: pars, 
		onSuccess: function(originalRequest) {
			var editElement = $('comment' + commentId).getElementsByClassName('edit')[0];
			var reviewElement = $('comment' + commentId).getElementsByClassName('review')[0];
			if (reviewElement == undefined) {
				new Insertion.Before(editElement,'<div class="review"><span></span><span></span></div>');
				reviewElement = $('comment' + commentId).getElementsByClassName('review')[0];
			}
			var showReviewElement = reviewElement.getElementsByTagName('span')[0];
			var editReviewElement = reviewElement.getElementsByTagName('span')[1];
			var reviewTextarea = "<textarea id='reviewTextarea" + commentId +
				"' style='width:80%; height:120px;'></textarea><br><input type='submit' onclick='commitReview(" +
				commentId + ")' value='回复留言' /> &nbsp; <input type='submit' onclick='cancleReview(" + commentId +
				")' value='取 消' />";
			showReviewElement.style.display = 'none';
			editElement.style.display = 'none';
			editReviewElement.innerHTML = reviewTextarea;
			$('reviewTextarea' + commentId).value = originalRequest.responseText.strip();
		}
	});
}

function cancleReview(commentId) {
	var editElement = $('comment' + commentId).getElementsByClassName('edit')[0];
	var reviewElement = $('comment' + commentId).getElementsByClassName('review')[0];
	var showReviewElement = reviewElement.getElementsByTagName('span')[0];
	var editReviewElement = reviewElement.getElementsByTagName('span')[1];
	showReviewElement.style.display = '';
	editReviewElement.innerHTML = '';
	editElement.style.display = '';
}


function commitReview(commentId) {
	var editElement = $('comment' + commentId).getElementsByClassName('edit')[0];
	var reviewElement = $('comment' + commentId).getElementsByClassName('review')[0];
	var showReviewElement = reviewElement.getElementsByTagName('span')[0];
	var editReviewElement = reviewElement.getElementsByTagName('span')[1];
	var review = $F('reviewTextarea' + commentId);
	
	var pars = 'ajax&updateReview&commentId=' + commentId + "&review=" + encodeURIComponent(review) + "&d=" + (new Date());
	new Ajax.Request('?',{
		method: 'post', 
		parameters: pars, 
		onSuccess: function(originalRequest) {
			cancleReview(commentId);
			reviewElement.innerHTML = originalRequest.responseText;
		}
	});
}

//---------------------------- Update Comment
function updateComment(commentId) {

	var pars = 'ajax&getComment&name=commentContent&commentId=' + commentId + "&d=" + (new Date());
	new Ajax.Request('?',{
		method: 'post', 
		parameters: pars, 
		onSuccess: function(originalRequest) {
			
			var commentElement = $('comment' + commentId).getElementsByClassName('content')[0];
			var editElement = $('comment' + commentId).getElementsByClassName('edit')[0];
			var showCommentElement = commentElement.getElementsByTagName('span')[0];
			var editCommentElement = commentElement.getElementsByTagName('span')[1];

			var commentTextarea = "<textarea id='commentTextarea" + commentId +
				"' style='width:80%; height:120px;'></textarea><br><input type='submit' onclick='commitComment(" +
				commentId + ")' value='修改评论' /> &nbsp; <input type='submit' onclick='cancleComment(" + commentId +
				")' value='取 消' />";
			showCommentElement.style.display = 'none';
			editElement.style.display = 'none';
			editCommentElement.innerHTML = commentTextarea;
			$('commentTextarea' + commentId).value = originalRequest.responseText.strip();
		}
	});
}

function commitComment(commentId) {
	var editElement = $('comment' + commentId).getElementsByClassName('edit')[0];
	var commentElement = $('comment' + commentId).getElementsByClassName('content')[0];
	var showCommentElement = commentElement.getElementsByTagName('span')[0];
	var editCommentElement = commentElement.getElementsByTagName('span')[1];
	var content = $F('commentTextarea' + commentId);

	var pars = 'ajax&updateComment&commentId=' + commentId + "&content=" + encodeURIComponent(content) + "&d=" + (new Date());
	new Ajax.Request('?',{
		method: 'post', 
		parameters: pars, 
		onSuccess: function(originalRequest) {
			cancleComment(commentId);
			commentElement.innerHTML = originalRequest.responseText;
		}
	});
}

function cancleComment(commentId) {
	var editElement = $('comment' + commentId).getElementsByClassName('edit')[0];
	var commentElement = $('comment' + commentId).getElementsByClassName('content')[0];
	var showCommentElement = commentElement.getElementsByTagName('span')[0];
	var editCommentElement = commentElement.getElementsByTagName('span')[1];
	showCommentElement.style.display = '';
	editCommentElement.innerHTML = '';
	editElement.style.display = '';

}

//----------------------------------- Add New Comment
function addComment() {
	var content = $F('comment-new').strip();
	if(content == '') {
		alert('留言不能为空');
		return;
	}
	$('comment-new').disabled = true;
	$('add-comment-btn').style.display = 'none';
	$('adding-comment').style.display = '';

	var pars = 'ajax&addComment&articleId=' + articleId + "&articleTitle=" + 
		encodeURIComponent($('article-title').innerHTML) + "&content=" + encodeURIComponent(content) + 
		"&articleUserid=" + userid + "&articleUsername=" + encodeURIComponent(username) + "&articleNickname=" + 
		encodeURIComponent(nickname) + "&anonymous=" + $('anonymous').checked + "&d=" + (new Date());
	new Ajax.Request('?',{
		method: 'post', 
		parameters: pars, 
		onSuccess: function(originalRequest) {
			//alert('添加评论成功');
			$('comment-new').value = '';
			new Insertion.Top('comment-list', originalRequest.responseText);
			$('comment-begin').scrollTo();
		},
		onFailure: function(originalRequest) {
			alert('添加评论失败,请稍后再试');
		},
		onComplete: function(originalRequest) {
			$('comment-new').disabled = false;
			$('add-comment-btn').style.display = '';
			$('adding-comment').style.display = 'none';
		}
	});
}
