file.inc in Field Complete 7
File
plugins/fields/file.inc
View source
<?php
$plugin = array(
'title' => t('FC: File field plugin'),
'completeness check' => 'fc_file_field_is_complete',
'incomplete process' => 'fc_file_incomplete_process',
'field form' => array(
'fc_check_fields' => array(
'#type' => 'checkbox',
'#title' => t('Check fields in the file entity (if any) for completeness'),
'#description' => t('If checked, any fields attached to this file will also be checked for completeness.'),
),
),
);
function fc_file_field_is_complete($items, $instance, $field, &$completed = array()) {
$module = $field['module'];
$check_fields = !empty($instance['settings']['fc']['fc_check_fields']);
foreach ($items as $delta => $item) {
$completed[$delta] = !module_invoke($module, 'field_is_empty', $item, $field);
if ($completed[$delta] && $check_fields && !empty($item['fc'])) {
$completed[$delta] = $item['fc']->complete;
}
}
}
function fc_file_incomplete_process($parent, $function, $cardinality, $items, $instance, $field) {
$incomplete = new fcIncomplete($instance['field_name'], $parent);
$incomplete->complete = $cardinality($function, $items, $instance, $field);
return $incomplete;
}