
var ctrl_enter = {
	attached : false,	
	attach : function () {
		var ctrl_enter = this;
		document.onkeypress = function (key_press) {
			if( ctrl_enter.attached ){
				var kC, cK, kM;
				if(	window.event ) { 
					kC = window.event.keyCode;
					cK = window.event.ctrlKey;
					kM = 2;
				} else if( parent && parent.event ) {
					kC = parent.event.keyCode;
					cK = parent.event.ctrlKey;
					kM = 2;
				} else {
					kC = key_press.keyCode;
					cK = key_press.ctrlKey;
					if( key_press.modifiers != undefined ) {
						kM = key_press.modifiers;
						cK = 2;
						kC = key_press.which;
					} else { kM = 2; }
				}
				if( cK && kM == 2 && ( kC == 13 || kC == 10 ) ) { 
					// send_error();
					ctrl_enter.drawback();
				}
			}
		}
		if ( parent ) { parent.document.onkeypress=document.onkeypress; }
		this.attached = true;
	}, 
	drawback : function () {
		var wnd = window, sel_text = null, err_text;
		if( wnd.getSelection ) { err_text=wnd.getSelection();}
		else if( wnd.document.getSelection ) { err_text=wnd.document.getSelection(); } 
		else { sel_text = wnd.document.selection; }
		if( sel_text ) {
			err_text   = sel_text.createRange().text;
			var b_text = sel_text.createRange();
			var a_text = sel_text.createRange();
			sel_text   = err_text;
			b_text.moveStart( "word",-10 );
			b_text.moveEnd( "character", -err_text.length );
			a_text.moveStart( "character", err_text.length );
			a_text.moveEnd( "word", 10 );
			sel_text = b_text.text + err_text + a_text.text;
		} else {
			if ( window.document.body != undefined ) {
				if ( wnd.document.body.innerText != undefined ) {
					sel_text=wnd.document.body.innerText;
				} else { sel_text=wnd.document.body.innerHTML; }
				var nn = sel_text.indexOf( err_text );
				if ( nn != -1 ){
					var tmp_str = err_text + "";
					sel_text = sel_text.substring( nn - 70, nn ) + err_text + 
							   sel_text.substring( nn + tmp_str.length, nn + tmp_str.length + 70 );
				} else { sel_text = err_text; }
			} else { sel_text = err_text; }
		}
		document.charset='windows-1251';
		if( err_text.length == 0 || err_text == " " ) { return; }
		//alert('[' + err_text + ']' + err_text.length);
		var senderror = window.open(
			"/drawback/?uri=" + escape( wnd.document.URL ) + "&err_text=" + escape(err_text), "senderror", 
			"width=870,height=450,addressbar=0,resizable=1,scrollbars=1,toolbar=1, menubar=1,status=1"
		);
	}
};

ctrl_enter.attach();

