

	var Comments = {
		
		actionsPath: "/common/actions/advice_comments.php",
		app: "",
		topic_id : 0,
		
		GetPosts : function(topicid)
		{
			var vars = "action=getposts&questionid=" + topicid + "&app=" + this.app;
			try {
				sendXmlHttpRequest("get", this.actionsPath, vars, this.getPostsCallback);
			} catch (e) {
				alert(e);
			}
		},
		
		getPostsCallback : function(jsHttp)
		{
			eval("var json = " + jsHttp.responseText);
			document.getElementById("posts_list_td").innerHTML = json.Html;
		},
		
		AddPost : function() 
		{
			var commentForm = document.forms["comments_form"];
			document.getElementById("sbmt_btn").disabled = true;
			commentForm.answerTextField.disabled = true;
			var vars = "action=add_comment&topicid="+commentForm.topicid.value+
				"&answerTextField="+xh_prepare_str(commentForm.answerTextField.value) + "&app=" + this.app;
			try {
				sendXmlHttpRequest("post", this.actionsPath, vars, 
					this.addPostCallback, 
					function() {document.getElementById("answerTextField").disabled = false;});
			} catch (e) {
				alert(e);
				xhShowLoad(false);
				document.getElementById("answerTextField").disabled = false;
			}
			setTimeout("Comments.EnableSbmtBtn()", 5000);		
		},
		
		addPostCallback : function(jsHttp)
		{
			eval("var json = " + jsHttp.responseText);
			ShowMsg(json.Message.Text, json.Message.Type);
			document.getElementById("answerTextField").value = "";
			document.getElementById("answerTextField").disabled = false;			
			Comments.GetPosts(Comments.topic_id);
		},
		
				
		EnableSbmtBtn : function()
		{
			document.getElementById('sbmt_btn').disabled = false;
			//!
			CloseMsg("msg_block");
		}
		
	}

	function pasteQuote()
	{
		var answerTextField = document.getElementById("answerTextField");
		if (GK || OP)
			var quote = window.getSelection();
		else if (IE)
			var quote = document.selection.createRange().text;
		if (answerTextField.value == "") {
			answerTextField.value = "[quote]" + quote + "[/quote]\n";
		} else {
			InsertText("[quote]" + quote + "[/quote]\n", "");
		}
		answerTextField.focus();
	}
	
	function pasteNick(nick)
	{
		var answerTextField = document.getElementById("answerTextField");
		InsertText("[b]"+ nick +"[/b]\n", "");
		answerTextField.focus();
	}
	
	function InsertText(left, right)
	{
		var answerTextField = document.getElementById("answerTextField");
		if (GK || OP) {
			var selStart = answerTextField.selectionStart;
			var selEnd = answerTextField.selectionEnd;
			var selectedText = answerTextField.value.substring(selStart, selEnd);
			var text =  answerTextField.value.substring(0, selStart) + left;
			if (right != "")
				text += answerTextField.value.substring(selStart, selEnd);
			text += right + answerTextField.value.substring(selEnd, answerTextField.value.length);
			answerTextField.value = text;
		} else if (IE) {
			 var text = left;
			 if (right != "") 
			 	text += document.selection.createRange().text;
			 text += right;
			 answerTextField.caretPos.text = text;
		}
	}

	//for IE from forum.mozilla-russia.org
	function setCaret(textObj) 
	{
		if (textObj.createTextRange) {
			textObj.caretPos = document.selection.createRange().duplicate();
			operastart = textObj.selectionEnd;
		}
	}
