function _hs_process_render_hs_selects in Hierarchical Select 7.3
Render the selects in the hierarchical select.
Parameters
$hsid: A hierarchical select id.
$hierarchy: A hierarchy object.
$size: The $size to render each select with.
Return value
A structured array for use in the Forms API.
1 call to _hs_process_render_hs_selects()
- form_hierarchical_select_process in ./
hierarchical_select.module - Hierarchical select form element type #process callback.
File
- ./
hierarchical_select.module, line 1239 - This module defines the "hierarchical_select" form element, which is a greatly enhanced way for letting the user select items in a hierarchy.
Code
function _hs_process_render_hs_selects($hsid, $hierarchy, $size) {
$form['#tree'] = TRUE;
$form['#prefix'] = '<div class="selects">';
$form['#suffix'] = '</div>';
foreach ($hierarchy->lineage as $depth => $selected_item) {
$form[$depth] = array(
'#type' => 'select',
'#options' => $hierarchy->levels[$depth],
'#default_value' => $selected_item,
'#size' => $size,
// Prevent the select from being wrapped in a div. This simplifies the
// CSS and JS code.
'#theme_wrappers' => array(),
// This alternative to theme_select ets a special class on the level
// label option, if any, to make level label styles possible.
'#theme' => 'hierarchical_select_select',
// Add child information. When a child has no children, its
// corresponding "option" element will be marked as such.
'#childinfo' => isset($hierarchy->childinfo[$depth]) ? $hierarchy->childinfo[$depth] : NULL,
// Drupal 7's Forms API insists on validating "select" form elements,
// despite the fact that this form element is merely part of a larger
// whole, with its own #element_validate callback. This disables that
// validation.
'#validated' => TRUE,
);
}
return $form;
}