diff --git cck_redirection.module cck_redirection.module
index 7becc60..bda09b1 100644
--- cck_redirection.module
+++ cck_redirection.module
@@ -50,9 +50,9 @@ function cck_redirection_menu() {
  * Implementation of hook_theme().
  */
 function cck_redirection_theme() {
-  return array(
-    'cck_redirection' => array(
-      'arguments' => array('element' => NULL),
+  return array(
+    'cck_redirection' => array(
+      'arguments' => array('element' => NULL),
     ),
     'cck_redirection_frameset' => array( // Show the new page in the bottom half of a frameset (think Google Images)
       'template' => 'cck-redirection-frameset',
@@ -125,15 +125,15 @@ function cck_redirection_form_alter(&$form, $form_state, $form_id) {
 /**
  * Implementation of FAPI hook_elements().
  */
-function cck_redirection_elements() {
-  return array(
-    'cck_redirection' => array(
-      '#input' => TRUE,
+function cck_redirection_elements() {
+  return array(
+    'cck_redirection' => array(
+      '#input' => TRUE,
       '#columns' => array('value'),
-      '#delta' => 0,
-      '#process' => array('cck_redirection_process'),
-      '#autocomplete_path' => FALSE,
-      ),
+      '#delta' => 0,
+      '#process' => array('cck_redirection_process'),
+      '#autocomplete_path' => FALSE,
+      ),
     );
 
 }
@@ -260,11 +260,19 @@ function cck_redirection_widget_settings($op, $widget) {
         '#options' => _cck_redirection_redirect_types(),
       );
       
+      $form['redirect_response_code'] = array(
+        '#type' => 'select',
+        '#title' => t('Redirection response code (only used if Divert redirection type is selected.)'),
+        '#default_value' => is_numeric($widget['redirect_response_code']) ? $widget['redirect_response_code'] : 302,
+        '#description' => t('Select a http response code to be used when diverting the webpage.'),
+        '#options' => _cck_redirection_redirect_response_code(),
+      );
+      
       return $form;
     case 'validate':
       break;
     case 'save': 
-      return array('redirect_type');
+      return array('redirect_type', 'redirect_response_code');
   } 
 }
 
@@ -390,22 +398,22 @@ function cck_redirection_frameset_header() {
  *
  * The $fields array is in $form['#field_info'][$element['#field_name']].
  */
-function cck_redirection_process($element, $edit, $form_state, $form) {
-  $field = $form['#field_info'][$element['#field_name']];
+function cck_redirection_process($element, $edit, $form_state, $form) {
+  $field = $form['#field_info'][$element['#field_name']];
   $field_key = $element['#columns'][0];
-  $delta = $element['#delta'];
+  $delta = $element['#delta'];
   $element[$field_key] = array(
-    '#type' => 'textfield',
+    '#type' => 'textfield',
     '#title' => $element['#title'],
     '#description' => $element['#description'],
-    '#required' => $element['#required'],
+    '#required' => $element['#required'],
     '#default_value' => isset($element['#value']) ? $element['#value'] : NULL,
     '#autocomplete_path' => $element['#autocomplete_path'],
   );
-
+
   if (!empty($field['max_length'])) {
-    $element[$field_key]['#maxlength'] = $field['max_length'];
-  }
+    $element[$field_key]['#maxlength'] = $field['max_length'];
+  }
   if (!empty($field['text_processing'])) {
     $filter_key = $element['#columns'][1];
     $format = isset($element['#value'][$filter_key]) ? $element['#value'][$filter_key] : FILTER_FORMAT_DEFAULT;
@@ -550,6 +558,20 @@ function _cck_redirection_redirect_types() {
 }
 
 /**
+ * Return an array of CCK Redirection response code.
+ */
+function _cck_redirection_redirect_response_code() {
+  return array(
+    '301' => t('301 - Moved Permanently'),
+    '302' => t('302 - Found (default in Drupal)'),
+    '303' => t('303 - See Other'),
+    '304' => t('304 - Not Modified'),
+    '305' => t('305 - Use Proxy'),
+    '307' => t('307 - Temporary Redirect (alternative to 503, site down)'),
+  );
+}
+
+/**
  * Accomplish redirection using the widget settings.
  */
 function _cck_redirection_redirect(&$element) {
@@ -563,16 +585,17 @@ function _cck_redirection_redirect(&$element) {
     $field = content_fields($element['#field_name'], $node->type);
     $widget = $field['widget'];
 
-    $method = is_numeric($widget['redirect_type']) ? $widget['redirect_type'] : NULL; 
-
+    $method = is_numeric($widget['redirect_type']) ? $widget['redirect_type'] : NULL;
+    $response_code = is_numeric($widget['redirect_response_code']) ? $widget['redirect_response_code'] : 302;
+    
     if (user_access('bypass redirection')) {
-      if (!empty($element['#item']['value'])) {
-        drupal_set_message(t('This node is redirected to a !r.', array('!r' => l(t('remote URI'), $element['#item']['value']))));
-      }
+      if (!empty($element['#item']['value'])) {
+        drupal_set_message(t('This node is redirected to a !r.', array('!r' => l(t('remote URI'), $element['#item']['value']))));
+      }
     } else {
       switch ($widget['redirect_type']) {
         case CCK_REDIRECTION_DIVERT:
-          _cck_redirection_divert($element);
+          _cck_redirection_divert($element, $response_code);
           break;
         case CCK_REDIRECTION_DELAY:
           _cck_redirection_delay($element);
@@ -593,28 +616,28 @@ function _cck_redirection_redirect(&$element) {
 /**
  * Diverts the browser to the target URI page.
  */
-function _cck_redirection_divert($element) {
-  if (!empty($element['#item']['value'])) {
-    drupal_goto($element['#item']['value']);
-  }
+function _cck_redirection_divert($element, $response_code) {
+  if (!empty($element['#item']['value'])) {
+    drupal_goto($element['#item']['value'], NULL, NULL, $response_code);
+  }
 }
 
 /**
  * Uses JS to delay redirection by five seconds, and then diverts the browser to the target URI page.
  */
-function _cck_redirection_delay($element) {
-  if (!empty($element['#item']['value'])) {
-    $_SESSION['cck_redirection'] = $element;
-    drupal_add_js('cck_redirection/js');
-  }
-}
-
+function _cck_redirection_delay($element) {
+  if (!empty($element['#item']['value'])) {
+    $_SESSION['cck_redirection'] = $element;
+    drupal_add_js('cck_redirection/js');
+  }
+}
+
 /**
  * Displays the target URI inside of a frameset.
  */
 function _cck_redirection_frameset($element) {
-  if (!empty($element['#item']['value'])) {
-    $_SESSION['cck_redirection'] = $element;
-    drupal_goto('redirect', 'uri=' . drupal_urlencode($element['#item']['value']));
-  }
-}
+  if (!empty($element['#item']['value'])) {
+    $_SESSION['cck_redirection'] = $element;
+    drupal_goto('redirect', 'uri=' . drupal_urlencode($element['#item']['value']));
+  }
+}
