Как добавить в статистику file_field_stat данные из профиля пользователя, скачавшего файл?

Главные вкладки

Аватар пользователя mikelo mikelo 6 марта 2011 в 15:17

CCK + filefield + filefield_stat

C помощью этой связки получаю статистику по загружаемым файлам прямо в нодах согласно этой статье.

Filefield_stat выдает статистику в следующем виде:

File | ID | Имя файла | Время/дата | Пользователь | Хост | Ссылка

Требуется получить статистику в следующем виде:

| № | Время/дата | Имя файла | Пользователь | Наименование организации | Контактные телефоны | Представитель поставщика | № удостоверения | e-mail |

В качестве профилей пользователей выступает тип материала на основе Content Profile, соответственно нужно выбрать поля из этих профилей.
Смотрел код, логика понятна, но не знаю как переписать функции.

В коде filefield_stat нашел функцию, где идет запись в таблицу, из которой потом выводятся необходимые данные.

/**
 * The download callback. This writes a record to the table and uses the core file_download function to get the file.
 */

function filefield_stats_download($file, $node, $user) {
  $data = new stdClass();
  $data->fid = (int)$file['fid'];
  $data->vid = (int)$node->vid;
  $data->timestamp = time();
  $data->uid = $user->uid;
  $data->hostname = ip_address();
  $data->referer = referer_uri();

  drupal_write_record('filefield_stats', $data);
  return call_user_func_array('file_download', explode('/', $file['filepath']));
}

Как переделать функцию, чтобы получать дополнительные данные из профиля?
PS. Ломаю голову третий день. Буду рад помощи.

Комментарии