You are here

function ext_search_page_get_filter_widgets in Extended search page 7

Return the chosen widgets for current page.

Parameters

Entity $page: The search page object

Return value

array An array of widgets for the given page.

4 calls to ext_search_page_get_filter_widgets()
ext_search_node_ref_potential_references in ext_search_node_ref/ext_search_node_ref.module
Fetch an array of all candidate referenced nodes.
ext_search_page_build_filter_values in ./ext_search_page.module
Helper function to build filters http params
ext_search_page_filter_form in ./ext_search_page.pages.inc
Add ext search filters widgets to the form.
ext_search_page_search_query in ./ext_search_page.module
Create the search page query.

File

./ext_search_page.module, line 473
Extended search page module.

Code

function ext_search_page_get_filter_widgets($page) {
  $widgets =& drupal_static(__FUNCTION__);
  if (!isset($widgets[$page->id])) {
    $widgets[$page->id] = array();
    foreach (ext_search_page_get_widgets_registry($page) as $field => $field_infos) {

      // paranoid : be sure it is a full coded widget...
      if (isset($field_infos['widgets'][$field_infos['wid']]['wid'])) {
        $widgets[$page->id][$field] = $field_infos['widgets'][$field_infos['wid']];
        foreach (array(
          'display',
          'block',
          'default',
        ) as $param) {
          $widgets[$page->id][$field][$param] = $field_infos[$param];
        }
      }
    }
  }
  return $widgets[$page->id];
}