--- a/autosave.js
+++ b/autosave.js
@@ -22,6 +22,15 @@ if (Drupal.jsEnabled) {
             }
           }
           $('#' + autosaved_form_id).focus();
+          // for FCKEditor
+          if (typeof(FCKeditor) != 'undefined' && FCKeditorAPI.Instances) {
+            for ( field in FCKeditorAPI.Instances ) {
+              var text = document.getElementById( FCKeditorAPI.GetInstance( field ).Name ).value;
+              if (text) {
+                FCKeditorAPI.GetInstance( field ).SetHTML(text);
+              }
+            }
+          }
           $(this).html('Reset');
           $('#autosave-status #keep').css('display', 'inline').css('visibility', 'visible');
           $('#autosave-status #keep a').html('Keep'); 
@@ -29,6 +38,15 @@ if (Drupal.jsEnabled) {
         else if ($(this).html() == 'Reset') {
           form = document.getElementById(autosaved_form_id);
           form.reset();
+          // for FCKEditor
+          if (typeof(FCKeditor) != 'undefined' && FCKeditorAPI.Instances) {
+            for ( field in FCKeditorAPI.Instances ) {
+              var text = document.getElementById( FCKeditorAPI.GetInstance( field ).Name ).value;
+              if (text) {
+                FCKeditorAPI.GetInstance( field ).SetHTML(text);
+              }
+            }
+          }
           $('#autosave-status #keep').css('display', 'none').css('visibility', 'hidden');
           $(this).html('View');
         }    
@@ -70,6 +88,13 @@ Drupal.saveForm = function() {
     }
   }
   
+  // adding FCKEditor support
+  if (typeof(FCKeditor) != 'undefined' && FCKeditorAPI.Instances) {
+    for ( field in FCKeditorAPI.Instances ) {
+      var text = FCKeditorAPI.GetInstance( field ).UpdateLinkedField();
+    }
+  }
+  
   var serialized = $('#node-form').formHash();
   serialized['q'] =  Drupal.settings.autosave.q;
   $.ajax({
