Index: link.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/link/link.module,v
retrieving revision 1.24.4.35
diff -u -p -r1.24.4.35 link.module
--- link.module	19 Aug 2010 04:34:49 -0000	1.24.4.35
+++ link.module	22 Oct 2010 13:58:15 -0000
@@ -33,6 +33,7 @@ define('LINK_TARGET_DEFAULT', 'default')
 define('LINK_TARGET_NEW_WINDOW', '_blank');
 define('LINK_TARGET_TOP', '_top');
 define('LINK_TARGET_USER', 'user');
+define('LINK_TARGET_USER_OFF', 'user_off');
 
 /**
  * Maximum URLs length.
@@ -134,7 +135,8 @@ function link_field_settings($op, $field
         LINK_TARGET_DEFAULT => t('Default (no target attribute)'),
         LINK_TARGET_TOP => t('Open link in window root'),
         LINK_TARGET_NEW_WINDOW => t('Open link in new window'),
-        LINK_TARGET_USER => t('Allow the user to choose'),
+        LINK_TARGET_USER => t('Allow the user to choose (default: new window)'),
+        LINK_TARGET_USER_OFF => t('Allow the user to choose (default: current window)'),
       );
       $form['attributes'] = array(
         '#tree' => TRUE,
@@ -360,12 +362,12 @@ function link_process($element, $edit, $
    // Add default atrributes.
    $field['attributes'] += _link_default_attributes();
    $attributes = isset($element['#value']['attributes']) ? $element['#value']['attributes'] : $field['attributes'];
-   if (!empty($field['attributes']['target']) && $field['attributes']['target'] == LINK_TARGET_USER) {
+   if (!empty($field['attributes']['target']) && ($field['attributes']['target'] == LINK_TARGET_USER || $field['attributes']['target'] == LINK_TARGET_USER_OFF)) {
      $element['attributes']['target'] = array(
        '#type' => 'checkbox',
        '#title' => t('Open URL in a New Window'),
        '#return_value' => LINK_TARGET_NEW_WINDOW,
-       '#default_value' => $attributes['target'],
+       '#default_value' => ($attributes['target'] !== LINK_TARGET_USER_OFF) ? $attributes['target'] : FALSE,
      );
    }
    return $element;
