? .project
? modules/.DS_Store
? sites/all/themes/.DS_Store
? sites/default/.DS_Store
? sites/default/files
? sites/default/settings.php
Index: modules/node/node.css
===================================================================
RCS file: /cvs/drupal/drupal/modules/node/node.css,v
retrieving revision 1.7
diff -u -p -r1.7 node.css
--- modules/node/node.css	30 Mar 2009 03:15:40 -0000	1.7
+++ modules/node/node.css	28 Jul 2009 09:23:56 -0000
@@ -42,4 +42,8 @@ td.revision-current {
 .terms-inline {
   display: inline;
 }
-
+.node-form .form-item-textarea label .field-edit-link {
+  font-size: .9em;
+  font-weight: normal;
+  margin-left: .5em;
+}
Index: modules/node/node.js
===================================================================
RCS file: /cvs/drupal/drupal/modules/node/node.js,v
retrieving revision 1.4
diff -u -p -r1.4 node.js
--- modules/node/node.js	27 Apr 2009 20:19:37 -0000	1.4
+++ modules/node/node.js	28 Jul 2009 09:23:56 -0000
@@ -32,4 +32,66 @@ Drupal.behaviors.nodeFieldsetSummaries =
   }
 };
 
+Drupal.behaviors.bodySummary = {
+  attach: function () {
+    // If summary does not contains text or the text equals the body value (at least the beginning of it).
+    if (($('#edit-body-0-summary').val() == '') || ($('#edit-body-0-value').val().indexOf($('#edit-body-0-summary').val()) > -1)) {
+      $('.body-0-summary-wrapper').hide();
+      $('#edit-body-0-value').keyup(function () {
+        var teaser = $(this).val();
+        if (teaser != '') {
+          $('#edit-body-0-summary').val(teaser);
+          if ($('.body-0-value-wrapper .field-edit-link').size()) {
+            $('.body-0-value-wrapper .field-edit-link').show();
+          }
+          else {
+            $('.body-0-value-wrapper label').append($('<a class="body-edit-summary field-edit-link" href="#">' + Drupal.t('Edit summary') + '</a>').click(function () {
+              $('.body-0-summary-wrapper').show();
+              $('.body-0-value-wrapper .field-edit-link').hide();
+              $('#edit-body-0-value').unbind('keyup');
+              if ($('.body-0-summary-wrapper .field-edit-link').size()) {
+                $('.body-0-summary-wrapper .field-edit-link').show();
+              }
+              else {
+                $('.body-0-summary-wrapper label').append($('<a class="body-hide-summary field-edit-link" href="#">' + Drupal.t('Hide summary') + '</a>').click(function () {
+                  $('.body-0-value-wrapper .field-edit-link').show();
+                  $('.body-0-summary-wrapper').hide();
+                  return false;
+                }));
+              }
+              return false;
+            }));
+          }
+        }
+        else {
+          $('#edit-body-0-summary').val(teaser);
+        }
+      });
+      $('#edit-body-0-value').keyup();
+    }
+    else if ($('#edit-body-0-value').val().indexOf($('#edit-body-0-summary').val()) === -1) {
+      if ($('.body-0-summary-wrapper .field-edit-link').size()) {
+        $('.body-0-summary-wrapper .field-edit-link').show();
+      }
+      else {
+        $('.body-0-summary-wrapper label').append($('<a class="body-hide-summary field-edit-link" href="#">' + Drupal.t('Hide summary') + '</a>').click(function () {
+          if ($('.body-0-value-wrapper .field-edit-link').size()) {
+            $('.body-0-value-wrapper .field-edit-link').show();
+          }
+          else {
+            $('.body-0-value-wrapper label').append($('<a class="body-edit-summary field-edit-link" href="#">' + Drupal.t('Edit summary') + '</a>').click(function () {
+              $('.body-0-summary-wrapper').show();
+              $('.body-0-value-wrapper .field-edit-link').hide();
+              $('#edit-body-0-value').unbind('keyup');
+            }));
+          }
+          $('.body-0-summary-wrapper').hide();
+          return false;
+        }));
+      }
+    }
+  }
+};
+
+
 })(jQuery);
