if(typeof Sitecore != "undefined") {

Sitecore.WebEdit.load = function() {

/*
 * register events on dom:loaded
 *
 */
	$$("span.scWebEditInput").each
	( function(elm) {
		Event.observe(elm.id, "paste", Sitecore.WebEdit.editorPaste.bindAsEventListener(Sitecore.WebEdit));
	});
}

/*
 * event handler for paste
 *
 */

Sitecore.WebEdit.editorPaste = function(evt) {
  var elm = Event.element(evt);
  var data = window.clipboardData.getData('Text');
  var sel = document.selection.createRange();
  if(elm.scFieldType == "single-line text"){
	  sel.pasteHTML(data);
      evt.stop();
  }
  return;
}

/*
 * override event handler
 *
 */

Sitecore.WebEdit.keyDown = function(evt) {

  if (evt.keyCode == 83 && evt.ctrlKey) {
    this.save();
    return;
  }

  if (evt.keyCode == 27) {
    this.hide(null, false, "escape key");
    return;
  }

  if (evt.keyCode == 18) {
    $$(".scPageDesignerDropZone").invoke('show');
    Event.stop(evt);
    return;
  }

  eventSource = evt.target;
  var webeditElement = eventSource instanceof Sitecore.WebEdit.Element ? eventSource : Sitecore.WebEdit.getElement(eventSource);

  if (webeditElement){
    if (this.activeElement && this.activeElement != webeditElement){
	this.hide(this.activeElement, false, "globalClick");
	this.show(webeditElement, null, "globalClick");
    }
    else{
	this.show(webeditElement, null, "globalClick");
    }
  }

  if (evt.keyCode == 13 && this.activeElement.fieldType() == "single-line text") {
      evt.stop();
      return;
  }

  if (evt.keyCode == 13 && this.activeElement && this.activeElement.contentEditable() && this.activeElement.parameters["linebreak"] == "br") {
    var sel = document.selection.createRange();
    sel.pasteHTML('<br />');
    evt.stop();
  }
}

}
