function values_import_form_submit in Values 6
Same name and namespace in other branches
- 7 values.module \values_import_form_submit()
Submit function for value list import.
File
- ./
values.module, line 563 - API for managing reusable value sets.
Code
function values_import_form_submit(&$form, &$form_state) {
if ($form_state['values']['import_type'] == 'values') {
$value_set = new stdClass();
$value_set->name = !isset($form_state['values']['name']) ? values_machine_name($form_state['values']['description']) : $form_state['values']['name'];
$value_set->description = $form_state['values']['description'];
// Process the key|value pairs
$list = explode("\n", $form_state['values']['values']);
$list = array_map('trim', $list);
$list = array_filter($list, 'strlen');
foreach ($list as $position => $text) {
$value_set->data[$position]['weight'] = $position;
// Check for an explicit key.
$matches = array();
if (preg_match('/(.*)\\|(.*)/', $text, $matches)) {
$value_set->data[$position]['value'] = $matches[1];
$value_set->data[$position]['label'] = $matches[2];
}
}
}
else {
$code = $form_state['values']['import'] . "\nreturn \$value_set;";
$value_set = eval($code);
}
values_save($value_set);
$form_state['redirect'] = 'admin/content/values/' . $value_set->name;
}