function filter_formats in Drupal 6
Same name and namespace in other branches
- 8 core/modules/filter/filter.module \filter_formats()
- 4 modules/filter.module \filter_formats()
- 5 modules/filter/filter.module \filter_formats()
- 7 modules/filter/filter.module \filter_formats()
- 9 core/modules/filter/filter.module \filter_formats()
- 10 core/modules/filter/filter.module \filter_formats()
Retrieve a list of input formats.
6 calls to filter_formats()
- blogapi_mt_supported_text_filters in modules/
blogapi/ blogapi.module - Blogging API callback. Sends a list of available input formats.
- filter_access in modules/
filter/ filter.module - Returns TRUE if the user is allowed to access this format.
- filter_admin_overview in modules/
filter/ filter.admin.inc - Menu callback; Displays a list of all input formats and which one is the default.
- filter_form in modules/
filter/ filter.module - Generates a selector for choosing a format in a form.
- filter_format_load in modules/
filter/ filter.module
1 string reference to 'filter_formats'
- system_install in modules/
system/ system.install - Implementation of hook_install().
File
- modules/
filter/ filter.module, line 290 - Framework for handling filtering of content.
Code
function filter_formats($index = NULL) {
global $user;
static $formats;
// Administrators can always use all input formats.
$all = user_access('administer filters');
if (!isset($formats)) {
$formats = array();
$query = 'SELECT * FROM {filter_formats}';
// Build query for selecting the format(s) based on the user's roles.
$args = array();
if (!$all) {
$where = array();
foreach ($user->roles as $rid => $role) {
$where[] = "roles LIKE '%%,%d,%%'";
$args[] = $rid;
}
$query .= ' WHERE ' . implode(' OR ', $where) . ' OR format = %d';
$args[] = variable_get('filter_default_format', 1);
}
$result = db_query($query, $args);
while ($format = db_fetch_object($result)) {
$formats[$format->format] = $format;
}
}
if (isset($index)) {
return isset($formats[$index]) ? $formats[$index] : FALSE;
}
return $formats;
}