--- webfm.js		2008-04-08 08:28:14.000000000 +0200
+++ webfm.js.paste_href	2008-04-18 13:57:08.000000000 +0200
@@ -99,6 +99,7 @@
 Webfm.menu_msg["denum"] = "Remove file from database";
 Webfm.menu_msg["perm"] = "File permissions";
 Webfm.menu_msg["clip"] = "put link in clipboard";
+Webfm.menu_msg["paste"] = "Paste link in editor window";
 //Do not translate any code below this line
 
 Webfm.current = null;
@@ -299,6 +300,7 @@
         Webfm.menuHT.put('file', new Webfm.menuElement(Webfm.menu_msg["att"], Webfm.menuAttach, Webfm.menuFidVal));
         Webfm.menuHT.put('det', new Webfm.menuElement(Webfm.menu_msg["meta"], Webfm.menuGetMeta, ''));
         Webfm.menuHT.put('det', new Webfm.menuElement(Webfm.menu_msg["det"], Webfm.menuDetach, ''));
+        Webfm.menuHT.put('det', new Webfm.menuElement(Webfm.menu_msg["paste"], Webfm.menuPasteHref, ''));
       } catch(err) {
         alert("Menu Create err\n" + err);
       }
@@ -1905,10 +1907,37 @@
   }
 }
 
-Webfm.menuPutLinkInClipboard = function(obj) {
+Webfm.generateFileHref  = function(obj) {
   var url = getBaseUrl();
   var string = "<a href=\"" + url + "\/webfm_send\/" + obj.element.id.substring(3) + "\">" + obj.element.title.substring(obj.element.title.lastIndexOf("/")+1) + "</a>";
-  Webfm.copyToClipboard(string);
+  return string;
+}
+
+Webfm.menuPutLinkInClipboard = function(obj) {
+  Webfm.copyToClipboard(Webfm.generateFileHref(obj));
+}
+
+Webfm.menuPasteHref = function(obj) {
+  var fileHref = Webfm.generateFileHref(obj);
+
+  // should we rely on a fixed string 'edit-body'? Can we fetch this id somehow via drupal?
+  var myField = document.getElementById('edit-body');
+
+   //IE support 
+  if (document.selection) { 
+    myField.focus(); 
+    sel = document.selection.createRange(); 
+    sel.text = fileHref; 
+  } 
+  //other browsers
+  else if (myField.selectionStart || myField.selectionStart == '0') { 
+    var startPos = myField.selectionStart; 
+    var endPos = myField.selectionEnd; 
+    myField.value = myField.value.substring(0, startPos)+ fileHref + myField.value.substring(endPos, myField.value.length); 
+  } else { 
+    myField.value += fileHref; 
+  } 
+  
 }
 
 Webfm.menuAdmin = function() {
