function template_preprocess_search_block_form in Drupal 7
Same name and namespace in other branches
- 6 modules/search/search.module \template_preprocess_search_block_form()
Process variables for search-block-form.tpl.php.
The $variables array contains the following arguments:
- $form
See also
Related topics
File
- modules/search/ search.module, line 1065 
- Enables site-wide keyword searching.
Code
function template_preprocess_search_block_form(&$variables) {
  $variables['search'] = array();
  $hidden = array();
  // Provide variables named after form keys so themers can print each element independently.
  foreach (element_children($variables['form']) as $key) {
    $type = isset($variables['form'][$key]['#type']) ? $variables['form'][$key]['#type'] : '';
    if ($type == 'hidden' || $type == 'token') {
      $hidden[] = drupal_render($variables['form'][$key]);
    }
    else {
      $variables['search'][$key] = drupal_render($variables['form'][$key]);
    }
  }
  // Hidden form elements have no value to themers. No need for separation.
  $variables['search']['hidden'] = implode($hidden);
  // Collect all form elements to make it easier to print the whole form.
  $variables['search_form'] = implode($variables['search']);
}