function check_markup

×

Error message

User warning: The following module is missing from the file system: theme/theme. For information about how to fix this, see the documentation page. in _drupal_trigger_error_with_delayed_logging() (line 1156 of /var/www/html/elmsln_community/api.elmsln.org/includes/bootstrap.inc).
cis7 filter.module check_markup($text, $format_id = NULL, $langcode = '', $cache = FALSE)
cle7 filter.module check_markup($text, $format_id = NULL, $langcode = '', $cache = FALSE)
elmsmedia7 filter.module check_markup($text, $format_id = NULL, $langcode = '', $cache = FALSE)
icor7 filter.module check_markup($text, $format_id = NULL, $langcode = '', $cache = FALSE)
meedjum_blog7 filter.module check_markup($text, $format_id = NULL, $langcode = '', $cache = FALSE)
mooc7 filter.module check_markup($text, $format_id = NULL, $langcode = '', $cache = FALSE)

Runs all the enabled filters on a piece of text.

Note: Because filters can inject JavaScript or execute PHP code, security is vital here. When a user supplies a text format, you should validate it using filter_access() before accepting/using it. This is normally done in the validation stage of the Form API. You should for example never make a preview of content in a disallowed format.

Parameters

$text: The text to be filtered.

$format_id: (optional) The format ID of the text to be filtered. If no format is assigned, the fallback format will be used. Defaults to NULL.

$langcode: (optional) The language code of the text to be filtered, e.g. 'en' for English. This allows filters to be language aware so language specific text replacement can be implemented. Defaults to an empty string.

$cache: (optional) A Boolean indicating whether to cache the filtered output in the {cache_filter} table. The caller may set this to FALSE when the output is already cached elsewhere to avoid duplicate cache lookups and storage. Defaults to FALSE.

Return value

The filtered text.

Related topics

33 calls to check_markup()
block_block_view in modules/block/block.module
Implements hook_block_view().
boxes_simple::render in sites/all/modules/ulmus/boxes/plugins/boxes_simple.inc
Implementation of boxes_box::render().
cis_section_entity_presave in sites/all/modules/elmsln_contrib/cis_connector/features/cis_section/cis_section.module
Implements hook_entity_presave().
cis_service_connection_block_instructor_contact in sites/all/modules/elmsln_contrib/cis_connector/modules/cis_service_connection/cis_service_connection.module
Callback for instructor contact block content.
comment_submit in modules/comment/comment.module
Prepare a comment for submission.

... See full list

File

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

Code

function check_markup($text, $format_id = NULL, $langcode = '', $cache = FALSE) {
  if (!isset($format_id)) {
    $format_id = filter_fallback_format();
  }
  // If the requested text format does not exist, the text cannot be filtered.
  if (!$format = filter_format_load($format_id)) {
    watchdog('filter', 'Missing text format: %format.', array('%format' => $format_id), WATCHDOG_ALERT);
    return '';
  }

  // Check for a cached version of this piece of text.
  $cache = $cache && !empty($format->cache);
  $cache_id = '';
  if ($cache) {
    $cache_id = $format->format . ':' . $langcode . ':' . hash('sha256', $text);
    if ($cached = cache_get($cache_id, 'cache_filter')) {
      return $cached->data;
    }
  }

  // Convert all Windows and Mac newlines to a single newline, so filters only
  // need to deal with one possibility.
  $text = str_replace(array("\r\n", "\r"), "\n", $text);

  // Get a complete list of filters, ordered properly.
  $filters = filter_list_format($format->format);
  $filter_info = filter_get_filters();

  // Give filters the chance to escape HTML-like data such as code or formulas.
  foreach ($filters as $name => $filter) {
    if ($filter->status && isset($filter_info[$name]['prepare callback']) && function_exists($filter_info[$name]['prepare callback'])) {
      $function = $filter_info[$name]['prepare callback'];
      $text = $function($text, $filter, $format, $langcode, $cache, $cache_id);
    }
  }

  // Perform filtering.
  foreach ($filters as $name => $filter) {
    if ($filter->status && isset($filter_info[$name]['process callback']) && function_exists($filter_info[$name]['process callback'])) {
      $function = $filter_info[$name]['process callback'];
      $text = $function($text, $filter, $format, $langcode, $cache, $cache_id);
    }
  }

  // Cache the filtered text. This cache is infinitely valid. It becomes
  // obsolete when $text changes (which leads to a new $cache_id). It is
  // automatically flushed when the text format is updated.
  // @see filter_format_save()
  if ($cache) {
    cache_set($cache_id, $text, 'cache_filter');
  }

  return $text;
}
Error | ELMSLN API

Error

×

Error message

  • Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/elmsln_community/api.elmsln.org/includes/common.inc:2791) in drupal_send_headers() (line 1499 of /var/www/html/elmsln_community/api.elmsln.org/includes/bootstrap.inc).
  • Error: Call to undefined function apc_delete() in DrupalAPCCache->clear() (line 289 of /var/www/html/elmsln_community/api.elmsln.org/sites/all/modules/apc/drupal_apc_cache.inc).
The website encountered an unexpected error. Please try again later.