diff --git a/langfilter/langfilter.php b/langfilter/langfilter.php index bbdc47fe..f7ccd0a6 100644 --- a/langfilter/langfilter.php +++ b/langfilter/langfilter.php @@ -93,11 +93,15 @@ function langfilter_prepare_body(&$a,&$b) { } $found = false; - $l = new Text_LanguageDetect; - $l->_name_mode = 2; // two letter codes - $l->_threshold = 600; // make it a bit harder to be confident with a lng - // IOW make it more possible that lng is correct - $lng = $l->detectSimple($b['html']); + + $opts = $b['item']['postopts']; + if ( $opts ) { + if ( preg_match('/^lang=([^;]*)/', $opts, $matches ) ) + { + $lang = $matches[1]; + $lng = Text_LanguageDetect_ISO639::nameToCode2($lang); + } + } if ($lng==null) return; if (! in_array($lng, $arr)) @@ -107,7 +111,7 @@ function langfilter_prepare_body(&$a,&$b) { if($found) { $rnd = random_string(8); - $b['html'] = '