1 mail.inc _backdrop_html_to_mail_urls($match = NULL, $reset = FALSE)

Keeps track of URLs and replaces them with placeholder tokens.

Callback for preg_replace_callback() within backdrop_html_to_text().

File

core/includes/mail.inc, line 582
API functions for processing and sending e-mail.

Code

function _backdrop_html_to_mail_urls($match = NULL, $reset = FALSE) {
  global $base_url, $base_path;
  static $urls = array(), $regexp;

  if ($reset) {
    // Reset internal URL list.
    $urls = array();
  }
  else {
    if (empty($regexp)) {
      $regexp = '@^' . preg_quote($base_path, '@') . '@';
    }
    if ($match) {
      list(, , $url, $label) = $match;
      // Ensure all URLs are absolute.
      $urls[] = strpos($url, '://') ? $url : preg_replace($regexp, $base_url . '/', $url);
      return $label . ' [' . count($urls) . ']';
    }
  }
  return $urls;
}