function biblio_admin_field_mapper_form in Bibliography Module 7.2
Same name and namespace in other branches
- 6.2 includes/biblio.admin.inc \biblio_admin_field_mapper_form()
- 6 biblio.admin.inc \biblio_admin_field_mapper_form()
- 7 includes/biblio.admin.inc \biblio_admin_field_mapper_form()
1 call to biblio_admin_field_mapper_form()
- biblio_admin_io_mapper_form in includes/
biblio.admin.inc
1 string reference to 'biblio_admin_field_mapper_form'
- biblio_admin_io_mapper_form in includes/
biblio.admin.inc
File
- includes/
biblio.admin.inc, line 1282
Code
function biblio_admin_field_mapper_form($format, $exportable = TRUE) {
$formats = module_invoke_all('biblio_mapper_options');
$form['#file_format_title'] = isset($formats[$format]) ? $formats[$format]['title'] : '';
$form['#file_format'] = $format;
$exportable = isset($formats[$format]['export']) ? $formats[$format]['export'] : $exportable;
$form['#file_format_export'] = $exportable;
$map = biblio_get_map('field_map', $format);
$export_map = biblio_get_map('export_map', $format);
ksort($map);
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Save field mapping'),
'#submit' => array(
'biblio_admin_field_mapper_form_submit',
),
);
$form['reset'] = array(
'#type' => 'submit',
'#value' => t('Reset field mapping to default'),
'#submit' => array(
'biblio_admin_field_mapper_form_reset_submit',
),
);
// Get default field names
// @todo: get field names for each publication types instead of just defaults
$json = drupal_get_path('module', 'biblio') . '/misc/default_fields.json';
$default_fields = json_decode(file_get_contents($json), TRUE);
foreach ($default_fields as $field_info) {
$fieldnames[] = $field_info['field_name'];
}
asort($fieldnames);
$biblio_field_options[''] = t('-none-');
$biblio_field_options['title'] = 'title';
foreach ($fieldnames as $field) {
$biblio_field_options[$field] = $field;
}
$biblio_field_select = array(
'#type' => 'select',
'#options' => $biblio_field_options,
);
foreach ($map as $key => $value) {
$biblio_field_select['#default_value'] = $map[$key];
$form['type'][$key] = array(
'format' => array(
'#markup' => "<b>" . $key . "</b>",
),
'biblio' => $biblio_field_select,
'#tree' => 1,
);
if ($exportable) {
$form['type'][$key]['export'] = array(
'#type' => 'checkbox',
'#default_value' => isset($export_map[$value]) ? $export_map[$value] : '',
);
}
}
return $form;
}