- audiofield_js in contributions/mediafield/audiofield.module
- Menu callback for JavaScript-based uploads.
audiofield_field($op, $node, $field, &$node_field, $a1, $a2)Implementation of hook_field().
contributions/mediafield/audiofield.module, line 41
<?php
function audiofield_field($op, $node, $field, &$node_field, $a1, $a2) {
require_once(drupal_get_path('module', 'audiofield') .'/multimediafile.inc');
$fieldname = $field['field_name'];
switch ($op) {
case 'load':
$output = array();
if (count($node_field)) {
$values = array();
foreach ($node_field as $delta => $file) {
if (!empty($file)) {
$values[$delta] = array_merge($node_field[$delta], _field_file_load($file['fid']));
$node_field[$delta] = $values[$delta];
}
$output = array($fieldname => $values);
}
}
break;
case 'view':
$files = array();
foreach ($node_field as $delta => $item) {
$node_field[$delta]['view'] = content_format($field, $item, 'default');
}
$output = theme('field', $node, $field, $node_field, $a1, $a2);
break;
case 'insert':
foreach ($node_field as $delta => $item) {
$node_field[$delta] = _field_file_insert($node, $item, $field);
}
break;
case 'update':
foreach ($node_field as $delta => $item) {
$node_field[$delta] = _field_file_update($node, $item, $field);
}
break;
case 'delete':
foreach ($node_field as $delta => $item) {
_field_file_delete($item, $field['field_name'], $field['type']);
}
break;
}
return $output;
}
?>