	var operastart=0;
	function insertAtCaret (textObj, textV) {
	    textV=textV.replace(/\[\?\]/g,'');
	    
	    if(document.all && !window.opera){
		textObj=document.main.text;
	            if (textObj.createTextRange && textObj.caretPos) {
		        var caretPos = textObj.caretPos
	                caretPos.text = (caretPos.text.charAt(caretPos.text.length - 1) == ' ') ?textV + ' ' : textV
	        }else{ textObj.value += textV}
	    }else{  var brows = navigator.userAgent.toString()
	            var ver=8
	       var scrollTop, scrollLeft;
	            if (textObj.type == 'textarea' &&  typeof textObj.scrollTop != 'undefined')
	             {
	                scrollTop  = textObj.scrollTop;
	                    scrollLeft = textObj.scrollLeft;
	             }
	            if(brows.search(/opera (\d*.\d*)/i) != -1) ver = RegExp.$1
	            if(textObj.selectionStart>=0  && ver>=8){
	                    var rangeStart =operastart==0?textObj.selectionStart:operastart
	                    var rangeEnd = textObj.selectionEnd
	                    var tempStr1 = textObj.value.substring(0,rangeStart)
	                    var tempStr2 = textObj.value.substring(rangeEnd, textObj.value.length)
	                    textObj.value = tempStr1 + textV + tempStr2
	                    textObj.selectionStart=textObj.selectionEnd=rangeStart+textV.length
	               if (typeof scrollTop != 'undefined')
	                 {
	            textObj.scrollTop  = scrollTop;
	            textObj.scrollLeft = scrollLeft;
	            }
	                    if (window.opera) operastart=textObj.selectionEnd=textObj.selectionEnd+1
	           }else{
	                    textObj.value+=textV
	            }
	    }
	}

	function copyQ() {
	        txt='';
		if (window.getSelection) txt = window.getSelection()
		else if (document.getSelection) txt=document.getSelection()
	        else if (document.selection) txt=document.selection.createRange().text
	        if(txt!='')
	        {
	        	txt='[q]'+txt+'[/q]\n'
	        }
	}
	 
	function pasteQ(){
	        if (txt!='' && $('text'))
        	{
	        	insertAtCaret($('text'),txt);
        	}else{
	        	alert(RiaLang.To_paste_cite_select_it_and_press_link);
        	}
	        return true;
	}
	
	function pasteN(text){
        	if (text!='' && $('text'))
	        insertAtCaret($('text'),"[b]" + text + "[/b]\n");
        	return true;
	}