function _msnf_restore_values_recursive in Multistep Nodeform 6
Helper function to restore values recursive.
1 call to _msnf_restore_values_recursive()
- _msnf_restore_values in ./
msnf.module - Restore node fields which has a tree-like structure of data..
File
- ./
msnf.module, line 399 - Main functions for module "Multistep Nodeform".
Code
function _msnf_restore_values_recursive($key, &$parent, $values) {
// Fields inside fieldsets.
$children = element_children($parent);
foreach ($children as $child_key) {
$child =& $parent[$child_key];
if (is_array($child)) {
if (isset($child['#tree']) && $child['#tree'] == TRUE) {
$value = $values[$child_key];
}
else {
if (isset($values[$child_key])) {
if ($key == 'taxonomy' && $child_key == 'tags') {
foreach ($values[$child_key] as $vid => $value) {
$parent[$child_key][$vid]['#default_value'] = $value;
}
}
else {
$parent[$child_key]['#default_value'] = $values[$child_key];
}
}
continue;
}
_msnf_restore_values_recursive($child_key, $child, $value);
}
}
// Single fields as "title".
if (isset($values[$key])) {
$parent['#default_value'] = $values[$key];
}
}