You are here

function formfilter_ui_pre_render in Formfilter 7

Forms API pre render callback for filtering forms.

1 string reference to 'formfilter_ui_pre_render'
formfilter_ui_form_alter in formfilter_ui/formfilter_ui.module
Implements hook_form_alter().

File

formfilter_ui/formfilter_ui.module, line 181
Provide a UI for modification of the fields presented in any form in your installation without resorting to hook_form_alter() or a custom theme.

Code

function formfilter_ui_pre_render($form) {
  if (!$form['#formfilter_ui_processed']) {
    $filters = variable_get('formfilter', array());
    $form_id = $form['form_id']['#value'];

    // If this is a node form, merge in the default settings for node forms.
    _formfilter_ui_add_node_filters($filters, $form, $form_id);
    $form_filters = array();
    if ($_REQUEST['formfilter_preview']) {
      drupal_set_message(t('Previewing filtered version of form.'));
    }
    if (isset($filters[$form_id]) && is_array($filters[$form_id])) {

      // Convert filters to arrays.
      foreach (array_keys($filters[$form_id]) as $filter) {
        $form_filters[] = explode('|', $filter);
      }
      formfilter_filter_form($form, $form_filters);
    }
    $form['#formfilter_ui_processed'] = TRUE;
  }
  return $form;
}