public function extraElementFieldWrangling_TextareaWithDropdown($elements, $number, $field_number, $fields_value)
{
// Manually-entered values
$field_values = array();
foreach ($_POST as $value_key => $value_value) {
if (preg_match('/^textAreaDropDownFieldValue' . $number . 'Field' . $field_number . '_/', $value_key)) {
$field_values[] = $value_value;
}
}
$lookup_table = array('name' => $elements[$number]['fields'][$field_number]['lookup_table'] = preg_replace('/^et_/', '', $elements[$number]['table_name'] . '_' . preg_replace('/_id$/', '', $elements[$number]['fields'][$field_number]['name'])));
$key_name = $lookup_table['name'] . '_fk';
if (strlen($key_name) > 64) {
$key_name = $this->generateKeyName($elements[$number]['fields'][$field_number]['name'], $fields_value);
}
$lookup_table = $this->generateKeyNames($lookup_table, array('lmui', 'cui'));
$lookup_table['values'] = $field_values;
$lookup_table['class'] = $elements[$number]['fields'][$field_number]['lookup_class'] = preg_replace('/^Element_/', '', $elements[$number]['class_name'] . '_' . str_replace(' ', '', ucwords(str_replace('_', ' ', $fields_value))));
$elements[$number]['fields'][$field_number]['lookup_field'] = 'name';
$elements[$number]['lookup_tables'][] = $lookup_table;
return $elements;
}