function apachesolr_multilingual_textfile_isolatin1accent_filter in Apache Solr Multilingual 6.2
Same name and namespace in other branches
- 6 apachesolr_multilingual_textfile/apachesolr_multilingual_textfile.module \apachesolr_multilingual_textfile_isolatin1accent_filter()
2 calls to apachesolr_multilingual_textfile_isolatin1accent_filter()
- apachesolr_multilingual_textfile_download in apachesolr_multilingual_textfile/
apachesolr_multilingual_textfile.module - apachesolr_multilingual_textfile_download_config_validate in apachesolr_multilingual_textfile/
apachesolr_multilingual_textfile.module
File
- apachesolr_multilingual_textfile/
apachesolr_multilingual_textfile.module, line 344
Code
function apachesolr_multilingual_textfile_isolatin1accent_filter($text) {
static $lines = array();
if (empty($lines)) {
$mapping_source_path = dirname(__FILE__) . '/../resources/';
$mappings = file_get_contents($mapping_source_path . 'mapping-ISOLatin1Accent.txt');
$mappings = preg_replace('/\\s*$/', '', $mappings);
$mappings = preg_replace('/^\\s*/', '', $mappings);
$lines = explode("\n", $mappings);
foreach ($lines as $i => $line) {
if (drupal_substr($line, 0, 1) == '#' || trim($line) == '') {
unset($lines[$i]);
}
}
}
$sr = array(
'"',
' ',
);
foreach ($lines as $line) {
$line = str_replace($sr, '', $line);
$mappings = explode("=>", $line);
$text = preg_replace("@\\x{" . str_replace('\\u', '', $mappings[0]) . "}@u", $mappings[1], $text);
}
return $text;
}