Index: filefield.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/filefield/filefield.module,v retrieving revision 1.185 diff -u -r1.185 filefield.module --- filefield.module 30 Mar 2009 01:19:34 -0000 1.185 +++ filefield.module 30 Mar 2009 01:38:20 -0000 @@ -786,3 +786,26 @@ } return $references; } + +/** + * Get a list of node IDs that reference a file. + * + * @param $file + * The file object for which to find references. + * @param $field + * A CCK field array. + * @return + * An array of IDs grouped by NID: array([nid] => array([vid1], [vid2])). + */ +function filefield_get_file_references($file, $field) { + $references = array(); + + $db_info = content_database_info($field); + $sql = 'SELECT nid, vid FROM {'. $db_info['table'] .'} WHERE '. $db_info['columns']['fid']['column'] .' = %d'; + $result = db_query($sql, $file->fid); + while ($row = db_fetch_object($result)) { + $references[$row->nid][] = $row->vid; + } + + return $references; +}