Same name and namespace in other branches
  1. 4.6.x modules/filter.module \filter_list_format()
  2. 4.7.x modules/filter.module \filter_list_format()
  3. 6.x modules/filter/filter.module \filter_list_format()
  4. 7.x modules/filter/filter.module \filter_list_format()

Retrieve a list of filters for a certain format.

7 calls to filter_list_format()
check_markup in modules/filter/filter.module
Run all the enabled filters on a piece of text.
filter_admin_configure in modules/filter/filter.module
Menu callback; display settings defined by filters.
filter_admin_format_form in modules/filter/filter.module
Generate a filter format form.
filter_admin_format_form_submit in modules/filter/filter.module
Process filter format form submissions.
filter_admin_order in modules/filter/filter.module
Menu callback; display form for ordering filters for a format.

... See full list

File

modules/filter/filter.module, line 707
Framework for handling filtering of content.

Code

function filter_list_format($format) {
  static $filters = array();
  if (!isset($filters[$format])) {
    $result = db_query("SELECT * FROM {filters} WHERE format = %d ORDER BY weight ASC", $format);
    if (db_num_rows($result) == 0 && !db_result(db_query("SELECT 1 FROM {filter_formats} WHERE format = %d", $format))) {

      // The format has no filters and does not exist, use the default input
      // format.
      $filters[$format] = filter_list_format(variable_get('filter_default_format', 1));
    }
    else {
      $filters[$format] = array();
      while ($filter = db_fetch_object($result)) {
        $list = module_invoke($filter->module, 'filter', 'list');
        if (isset($list) && is_array($list) && isset($list[$filter->delta])) {
          $filter->name = $list[$filter->delta];
          $filters[$format][$filter->module . '/' . $filter->delta] = $filter;
        }
      }
    }
  }
  return $filters[$format];
}