function reply(commentId, authorElementId, commentElementId) {
    var authorElement = lib_getObj(authorElementId);
    var commentElement = lib_getObj(commentElementId);
    var replyBoxElement = lib_getObj('reply_box')
    var replyCancelElement = lib_getObj('reply_cancel')
    var followCommentIdElement = lib_getObj('follow_comment_id')

    if (!authorElement || !commentElement || !replyBoxElement || !replyCancelElement
            || !followCommentIdElement) {
        return false;
    }

    var reply = '<div id=reply_box_title>Відповідь на коментар - ' + authorElement.innerHTML + '</div>'
        + '' + commentElement.innerHTML;

    replyBoxElement.innerHTML = reply;

    followCommentIdElement.value = commentId;

    replyBoxElement.style.display = 'block';
    replyCancelElement.style.display = 'inline';
}

function cancelReply() {
    var replyCancelElement = lib_getObj('reply_cancel')
    var replyBoxElement = lib_getObj('reply_box')
    var followCommentIdElement = lib_getObj('follow_comment_id')
    var followCommentIdElement = lib_getObj('follow_comment_id')

    if (!replyCancelElement || !replyBoxElement || !followCommentIdElement) {
        return false;
    }

    followCommentIdElement.value = '';
    replyCancelElement.style.display = 'none';
    replyBoxElement.style.display = 'none';
}


function lib_isAgent(reqName, reqVer)  {
	return (navigator.appName.indexOf(reqName) != -1
		&& parseInt(navigator.appVersion) >= (reqVer || 4));
}

function lib_isIe(minVer) {
	return lib_isAgent("Microsoft", minVer) && window.ActiveXObject;
}

function lib_isNS(minVer) {
	return lib_isAgent("Netscape", minVer);
}

function lib_getObj(objName, doc) {
	var doc = doc || document;

	switch (true)  {
	case lib_isIe():
		return doc.all[objName];
		
	case lib_isNS():
		return doc.getElementById(objName);
		
	default:
		return doc.all ? doc.all[objName] : eval("doc." + [objName]);
	}
}

window.document.onkeypress = onKeyPress;

function onKeyPress (e) {
        var pressed=0;
        var we = (window.event && window.event) || (parent && parent.event);
        if (we) {
            // IE & Opera
            pressed = 
                we.keyCode==10 ||  // IE
                (we.keyCode == 13 && we.ctrlKey); // Opera
        } else if (e) {
            pressed = 
                (e.which==10 && e.modifiers==2) || // NN4
                (e.keyCode==0 && e.charCode==106 && e.ctrlKey) ||
                (e.keyCode==13 && e.ctrlKey) // Mozilla
        }
        if (pressed) { 
          sendInfo();           
          return false;
        }
}

function sendInfo() {
    var selection = null;
    if (parent.getSelection) {
        selection = parent.getSelection();
    } else if (parent.document.getSelection) {
        selection = parent.document.getSelection();
    } else if (document.selection && document.selection.createRange) {
        var range = document.selection.createRange();
        selection = range.text;
    } else {
        selection = "-1";
    }
    selection = new String(selection);
    if (selection.length > 255) {
      alrt = 'Текст завеликий, виділіть будь-ласка\nтекст меншого розміру.';
      alert(alrt);
      return;
    } else if (selection.length == 0) {
      alrt = 'Нічого не виділено!';
      alert(alrt);
      return;
    } else if (selection == '-1'){
      alrt = 'Пробачте, але Ваш броузер не підтримує цю функцію!';
      alert(alrt);
      return;
    }
    
    confrm = "Дякуємо за допомогу!\nТекст:\n\n\""+selection+"\"\n\nбуде відправлено для виправлення!";

    var result = confirm(confrm);

    if (result) {
      window.document.selection_form.selection.value = selection;
      window.document.selection_form.submit();
    }
}
