diff -urp nodereferrer_create/create_referrer.php nodereferrer_create_new/create_referrer.php
--- nodereferrer_create/create_referrer.php	2008-09-09 13:11:13.000000000 +0200
+++ nodereferrer_create_new/create_referrer.php	2009-01-30 13:35:06.000000000 +0100
@@ -78,15 +78,24 @@ function _nodereferrer_create_referrer_a
     if (!$signal['add'] && isset($form[$signal['field']]['#default_value'])) {
       $form[$signal['field']]['#default_value'] = array('nid' => $signal['nid']);
     } else {
+      $field_location = &$form;
+      if(!isset($field_location[$signal['field']]) && module_exists('fieldgroup'))
+      {
+        $group = fieldgroup_get_group($form['#node']->type, $signal['field']);
+        if ($group)
+        {
+          $field_location = &$form[$group];
+        }
+      }
       $idx = -1;
-      while(isset($form[$signal['field']][$idx+1])) {
+      while(isset($field_location[$signal['field']][$idx+1])) {
         $idx = $idx+1;
       }
       if ($idx >= 0) {
         if (!$signal['add'] && $idx > 0) {
           $idx = $idx - 1;
         }
-        $form[$signal['field']][$idx]['#default_value'] = array('nid' => $signal['nid']);
+        $field_location[$signal['field']][$idx]['#default_value'] = array('nid' => $signal['nid']);
       }
     }
     
diff -urp nodereferrer_create/nodereferrer_create.module nodereferrer_create_new/nodereferrer_create.module
--- nodereferrer_create/nodereferrer_create.module	2008-10-10 15:02:53.000000000 +0200
+++ nodereferrer_create_new/nodereferrer_create.module	2009-01-29 02:52:54.000000000 +0100
@@ -162,13 +162,20 @@ function _nodereferrer_create_nodeapi_vi
     // Make inline menu if requried
     if (variable_get('nodereferrer_create_inline', 1) &&
         $has_values) {
-      $new_field = $node->content[$field_name];
-      unset($node->content[$field_name]);
-      
+      $field_location = &$node->content;
+      if (!isset($field_location[$field_name]) && module_exists('fieldgroup'))
+      {
+        $group = fieldgroup_get_group($node->type, $field_name);
+        if ($group)
+        {
+          $field_location = &$node->content[$group]['group'];
+        }
+      }
+      $new_field = &$field_location[$field_name];
+      unset($field_location[$field_name]);
       $new_weight = $new_field['#weight'];
       $new_field['#weight'] = 0;
-      
-      $node->content['nodereferrer_create_'.$field_name] = array(
+      $field_location['nodereferrer_create_'.$field_name] = array(
         '#weight' => $new_weight,
         'children' => array(
           $new_field,
@@ -237,13 +244,22 @@ function _nodereferrer_create_nodeapi_vi
     // Make inline menu if requried
     if (variable_get('nodereferrer_create_inline', 1) &&
         $has_values) {
-      $new_field = $node->content[$field_name];
-      unset($node->content[$field_name]);
-      
+
+      $field_location = &$node->content;
+      if (!isset($field_location[$field_name]) && module_exists('fieldgroup'))
+      {
+        $group = fieldgroup_get_group($node->type, $field_name);
+        if ($group)
+        {
+          $field_location = &$node->content[$group]['group'];
+        }
+      }
+      $new_field = &$field_location[$field_name];      
+      unset($field_location[$field_name]);
       $new_weight = $new_field['#weight'];
       $new_field['#weight'] = 0;
       
-      $node->content['nodereferrer_create_'.$field_name] = array(
+      $field_location['nodereferrer_create_'.$field_name] = array(
         '#weight' => $new_weight,
         'children' => array(
           $new_field,
