You are here

function rules_forms_get_form_info in Rules Forms Support 7.2

Same name and namespace in other branches
  1. 7 rules_forms.module \rules_forms_get_form_info()

Returns an array of information about active forms.

Parameters

string $form_id: An optional form ID specifying the form about which to return information.

7 calls to rules_forms_get_form_info()
RulesFormsAPITestCase::testGetFormInfo in ./rules_forms.test
Tests rules_forms_get_form_info().
rules_forms_activate in includes/rules_forms.admin.inc
Activation page for a form ID.
rules_forms_admin_events in includes/rules_forms.admin.inc
Defines the forms events settings form.
rules_forms_after_build in ./rules_forms.module
Builds property info about the form structure if necessary.
rules_forms_form_alter in ./rules_forms.module
Implements hook_form_alter().

... See full list

File

./rules_forms.module, line 296
Rules Forms Support provides events, conditions, and actions for site forms.

Code

function rules_forms_get_form_info($form_id = NULL) {
  if ($data = rules_forms_get_cache('rules_forms_info')) {
    $form_info = $data;
  }
  else {
    $form_info = array();
    if (!db_table_exists('rules_forms')) {
      return $form_info;
    }
    $results = db_select('rules_forms', 'rf')
      ->fields('rf')
      ->execute();
    foreach ($results as $info) {
      $info = (array) $info;
      $info['properties'] = unserialize($info['properties']);
      $info['rebuild'] = $info['rebuild'] == TRUE;
      $form_info[$info['form_id']] = $info;
    }
    rules_forms_set_cache('rules_forms_info', $form_info);
  }
  if (isset($form_id)) {
    return isset($form_info[$form_id]) ? $form_info[$form_id] : FALSE;
  }
  return $form_info;
}