function node_gallery_api_flatten_item_edit_form in Node Gallery 7
Eliminates any fieldsets from the image item edit form.
1 call to node_gallery_api_flatten_item_edit_form()
- node_gallery_api_item_edit_form in ./
node_gallery_api.pages.inc - Gallery Item edit form.
File
- ./
node_gallery_api.pages.inc, line 630 - Node Gallery module.
Code
function node_gallery_api_flatten_item_edit_form($form_item, &$flattened = array(), $inheritance = array()) {
if (empty($form_item) || !is_array($form_item)) {
return $form_item;
}
if (empty($flattened)) {
// We start with the whole form, because nested values will be overwritten.
$flattened = $form_item;
}
foreach (element_children($form_item) as $key) {
$element = $form_item[$key];
if (isset($element['#type']) && $element['#type'] == 'fieldset') {
if (isset($element['#tree']) && !empty($element['#tree'])) {
// We have to keep this as its tree preserving. just remove fieldset.
unset($element['#type']);
$flattened[$key] = $element;
}
else {
// This overwrites the old level if existing, so the field
// inherits title and weight from the 'deepest' fieldset.
$inheritance['#title'] = $element['#title'];
$inheritance['#weight'] = $element['#weight'];
unset($flattened[$key]);
node_gallery_api_flatten_item_edit_form($element, $flattened, $inheritance);
$inheritance = array();
}
}
else {
$flattened[$key] = array_merge($inheritance, $element);
}
}
return $flattened;
}