diff --git a/save_draft.js b/save_draft.js
old mode 100644
new mode 100755
index f7fa45f..88ecf8f
--- a/save_draft.js
+++ b/save_draft.js
@@ -21,4 +21,22 @@ Drupal.behaviors.saveDraftFieldsetSummaries = {
   }
 };
 
+Drupal.behaviors.moreSaveDraftFieldsetSummaries = {
+  attach: function (context) {
+    $('fieldset#edit-save-draft', context).drupalSetSummary(function (context) {
+
+      // Retrieve the value of the selected radio button
+      var save_draft = $("input[@name=#edit-savedraft]:checked").val();
+
+      if (save_draft==0) {
+        return Drupal.t('Disabled')
+      }
+      else if (save_draft==1) {
+        return Drupal.t('Enabled')
+      }
+      
+    });
+  }
+};
+
 })(jQuery);
diff --git a/save_draft.module b/save_draft.module
old mode 100644
new mode 100755
index 6e0123a..ec759a5
--- a/save_draft.module
+++ b/save_draft.module
@@ -5,6 +5,9 @@
  * Main file for the Save Draft module, which adds a 'Save as draft' button to content types.
  */
 
+define('SAVE_DRAFT_DISABLED', 0);
+define('SAVE_DRAFT_ENABLED', 1);
+
 /**
  * Implements hook_permission().
  */
@@ -27,7 +30,7 @@ function save_draft_permission() {
  * unpublished.
  */
 function save_draft_form_node_form_alter(&$form, &$form_state) {
-  if (save_draft_access($form, $form_state)) {
+  if (save_draft_access($form, $form_state) && save_draft_get_setting($form['#node']->type) == SAVE_DRAFT_ENABLED) {
     // Remove the status checkbox from the options fieldset, and adjust the
     // fieldset accordingly.
     if (isset($form['options']['status'])) {
@@ -95,6 +98,42 @@ function save_draft_validate($form, &$form_state) {
 }
 
 /**
+ * Implements hook_form_FORM_ID_alter() for the node type form.
+ */
+function save_draft_form_node_type_form_alter(&$form, &$form_state) {
+  $default_value = save_draft_get_setting($form['#node_type']->type);
+  
+  $form['save_draft'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('Enable "Save draft" button'),
+    '#weight' => 0,
+    '#collapsible' => TRUE,
+    '#collapsed' => !$default_value,
+    '#group' => 'additional_settings',
+    '#attached' => array(
+      'js' => array(
+        'save-draft' => drupal_get_path('module', 'save_draft') . '/save_draft.js',
+      ),
+    ),
+  );
+  $form['save_draft']['savedraft'] = array(
+    '#type' => 'radios',
+    '#default_value' => $default_value,
+    '#options' => array(
+      t('Disabled'),
+      t('Enabled'),      
+    )
+  );  
+}
+
+/**
+ * Gets the save draft setting associated with the given content type.
+ */
+function save_draft_get_setting($type) {
+  return variable_get('savedraft_' . $type, SAVE_DRAFT_DISABLED);
+}
+
+/**
  * Returns TRUE if the currently logged in user has permission to choose the published state for the node being edited.
  */
 function save_draft_access($form, &$form_state) {
@@ -132,3 +171,20 @@ function save_draft_access($form, &$form_state) {
 
   return $access;
 }
+
+/**
+ * Implements hook_node_type_delete().
+ */
+function save_draft_node_type_delete($info) { 
+  variable_del('savedraft_' . $info->type);
+}
+
+/**
+ * Implements hook_node_type_update().
+ */
+function save_draft_node_type_update($info) {
+  if (!empty($info->old_type) && $info->old_type != $info->type) {    
+    variable_set('savedraft_' . $info->type, save_draft_get_setting($info->old_type));
+    variable_del('savedraft_' . $info->old_type);      
+  }  
+}
