language aware content

This commit is contained in:
Hubzilla 2017-01-20 13:36:37 -08:00
parent ece1dd1d7e
commit 0368b6730f
2 changed files with 22 additions and 0 deletions

View File

@ -108,6 +108,8 @@ class Comanche {
return $_SERVER['REQUEST_URI'];
elseif($x[0] === 'observer') {
if(count($x) > 1) {
if($x[1] == 'language')
return \App::$language;
$y = \App::get_observer();
if(! $y)
return false;

View File

@ -473,11 +473,26 @@ function bb_sanitize_style($input) {
return '<span style="' . $css_string_san . '">' . $input[2] . '</span>';
}
function oblanguage_callback($matches) {
if(strlen($matches[1]) == 2) {
$compare = strtolower(substr(\App::$language,0,2));
}
else {
$compare = strtolower(\App::$language);
}
if($compare === strtolower($matches[1]))
return $matches[2];
return '';
}
function bb_observer($Text) {
$observer = App::get_observer();
if ((strpos($Text,'[/observer]') !== false) || (strpos($Text,'[/rpost]') !== false)) {
if ($observer) {
$Text = preg_replace("/\[observer\=1\](.*?)\[\/observer\]/ism", '$1', $Text);
$Text = preg_replace("/\[observer\=0\].*?\[\/observer\]/ism", '', $Text);
@ -561,6 +576,9 @@ function parseIdentityAwareHTML($Text) {
$observer = App::get_observer();
if ((strpos($Text,'[/observer]') !== false) || (strpos($Text,'[/rpost]') !== false)) {
$Text = preg_replace_callback("/\[observer\.language\=(.*?)\](.*?)\[\/observer\]/ism",'oblanguage_callback', $Text);
if ($observer) {
$Text = preg_replace("/\[observer\=1\](.*?)\[\/observer\]/ism", '$1', $Text);
$Text = preg_replace("/\[observer\=0\].*?\[\/observer\]/ism", '', $Text);
@ -643,6 +661,8 @@ function bbcode($Text, $preserve_nl = false, $tryoembed = true, $cache = false)
$observer = App::get_observer();
if ((strpos($Text,'[/observer]') !== false) || (strpos($Text,'[/rpost]') !== false)) {
$Text = preg_replace_callback("/\[observer\.language\=(.*?)\](.*?)\[\/observer\]/ism",'oblanguage_callback', $Text);
if ($observer) {
$Text = preg_replace("/\[observer\=1\](.*?)\[\/observer\]/ism", '$1', $Text);
$Text = preg_replace("/\[observer\=0\].*?\[\/observer\]/ism", '', $Text);