*** nodereference_url.module.orig	2010-02-16 09:46:39.000000000 -0500
--- nodereference_url.module	2010-02-16 11:12:31.000000000 -0500
***************
*** 193,198 ****
--- 193,211 ----
            '#element_validate' => array('nodereference_url_fallback_validate'),
          );
  
+         $form['node_display'] = array(
+           '#type' => 'radios',
+           '#title' => t('Node Display'),
+           '#options' => array(
+             'title' => t('Display the node title (default behaviour)'),
+             'teaser' => t('Display the node teaser'),
+             'full' => t('Display the full node'),
+           ),
+           '#default_value' => isset($widget['node_display']) ? $widget['node_display'] : 'title',
+           '#description' => t('When displaying the form and a referneced node is used, determine how to display that node.'),
+           '#required' => TRUE,
+         );
+ 
          $form['node_link'] = array(
            '#tree' => TRUE,
            '#type' => 'fieldset',
***************
*** 237,243 ****
        return $form;
  
      case 'save':
!       return array('node_link', 'fallback');
    }
  }
  
--- 250,256 ----
        return $form;
  
      case 'save':
!       return array('node_link', 'node_display', 'fallback');
    }
  }
  
***************
*** 339,345 ****
    $field = $form['#field_info'][$element['#field_name']];
  
    if (isset($element['#value']) && is_numeric($element['#value'])) {
!     $element['#display_title'] = _nodereference_titles($element['#value']);
    }
    else {
      $element['#display_title'] = t('Referenced content not found.');
--- 352,371 ----
    $field = $form['#field_info'][$element['#field_name']];
  
    if (isset($element['#value']) && is_numeric($element['#value'])) {
!     switch ($field['widget']['node_display']) {
!       case 'full': // display full node
!         $node = node_load($element['#value']);
!         $element['#display_title'] = node_view($node, FALSE, FALSE, FALSE);
!         break;
! 
!       case 'teaser': // display node teaser
!         $node = node_load($element['#value']);
!         $element['#display_title'] = node_view($node, TRUE, FALSE, FALSE);
!         break;
! 
!       default: // normal behaviour
!        $element['#display_title'] = _nodereference_titles($element['#value']);
!     }
    }
    else {
      $element['#display_title'] = t('Referenced content not found.');
