TRUE,
'#process' => array('expand_file_upload_combo'),
'#element_validate' => array('file_upload_combo_validate'),
);
$type['sequence_combo'] = array(
'#input' => TRUE,
'#process' => array('expand_sequence_combo'),
'#element_validate' => array('sequence_combo_validate'),
);
return $type;
}
/**
* Upload File and keep track of previously uploaded files
* Form element description
*/
function expand_file_upload_combo($element, $edit, $form_state, $complete_form) {
// set the default values for each field
if (empty($element['#value'])) {
$element['#value'] = array(
'items' => '',
'items_file' => '',
'file_path' => '',
);
}
$element['#tree'] = TRUE;
// add items text area element
$parents = $element['#parents'];
$parents[] = 'items';
$element['items'] = array(
'#type' => 'textarea',
'#default_value' => $element['#value']['items'],
);
// add file upload element
$parents = $element['#parents'];
$parents[] = 'items_file';
$element['items_file'] = array(
'#type' => 'file',
'#title' => 'File upload',
'#default_value' => $element['#value']['items_file'],
);
// add hidden elelment
$parents = $element['#parents'];
$parents[] = 'file_path';
$element['file_path'] = array(
'#type' => 'hidden',
'#default_value' => $element['#value']['file_path'],
);
return $element;
}
/**
* Form element description
*/
function expand_sequence_combo($element, $edit, $form_state, $complete_form) {
// set the default values for each field
if (empty($element['#value'])) {
$element['#value'] = array(
'upstream' => '',
'downstream' => '',
);
}
$element['#tree'] = TRUE;
// add the upstream box
$parents = $element['#parents'];
$parents[] = 'upstream';
$element['upstream'] = array(
'#type' => 'textfield',
'#title' => t('Get Upstream Bases'),
'#description' => t('Specify the number of upstream bases to include in the sequnce'),
'#default_value' => $element['#value']['upstream'],
);
// add the downstream box
$parents = $element['#parents'];
$parents[] = 'downstream';
$element['downstream'] = array(
'#type' => 'textfield',
'#prefix' => '
',
'#title' => t('Get Downstream Bases'),
'#description' => t('Specify the number of downstream bases to include in the sequnce'),
'#default_value' => $element['#value']['downstream'],
);
return $element;
}
/**
* Theme the file upload combo form element
*/
function theme_file_upload_combo($element) {
return theme('form_element', $element, '