--- fivestar_field.inc_old 2008-07-23 15:54:22.000000000 +0000 +++ fivestar_field.inc 2008-10-08 20:20:39.000000000 +0000 @@ -101,7 +101,7 @@ ); } } - + /** * Implementation of hook_field(). */ @@ -140,9 +140,16 @@ // Use eval rather than drupal_eval to allow access to local variables. $items[$delta]['target'] = eval($item['target']); } + $nid = 0; if (is_numeric($items[$delta]['target'])) { - _fivestar_cast_vote('node', $items[$delta]['target'], 0, $items[$delta]['axis'], $node->uid); - votingapi_recalculate_results('node', $items[$delta]['target']); + $nid = $items[$delta]['target']; + } + elseif (isset($items[$delta]['target'][0]['nid'])) { + $nid = $items[$delta]['target'][0]['nid']; + } + if ($nid) { + _fivestar_cast_vote('node', $nid, 0, $items[$delta]['axis'], $node->uid); + votingapi_recalculate_results('node', $nid); } } break; @@ -231,7 +238,7 @@ return $element; } - + /** * Implementation of hook_field_formatter_info(). */