Add some identity-aware parsing to HTML content using parseIdentityAwareHTML()
This commit is contained in:
@@ -529,7 +529,46 @@ function bb_fixtable_lf($match) {
|
||||
|
||||
}
|
||||
|
||||
function parseIdentityAwareHTML($Text) {
|
||||
|
||||
// process [observer] tags before we do anything else because we might
|
||||
// be stripping away stuff that then doesn't need to be worked on anymore
|
||||
|
||||
$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);
|
||||
$Text = preg_replace_callback("/\[rpost(=(.*?))?\](.*?)\[\/rpost\]/ism", 'rpost_callback', $Text);
|
||||
} else {
|
||||
$Text = preg_replace("/\[observer\=1\].*?\[\/observer\]/ism", '', $Text);
|
||||
$Text = preg_replace("/\[observer\=0\](.*?)\[\/observer\]/ism", '$1', $Text);
|
||||
$Text = preg_replace("/\[rpost(=.*?)?\](.*?)\[\/rpost\]/ism", '', $Text);
|
||||
}
|
||||
}
|
||||
// replace [observer.baseurl]
|
||||
if ($observer) {
|
||||
$s1 = '<span class="bb_observer" title="' . t('Different viewers will see this text differently') . '">';
|
||||
$s2 = '</span>';
|
||||
$obsBaseURL = $observer['xchan_connurl'];
|
||||
$obsBaseURL = preg_replace("/\/poco\/.*$/", '', $obsBaseURL);
|
||||
$Text = str_replace('[observer.baseurl]', $obsBaseURL, $Text);
|
||||
$Text = str_replace('[observer.url]',$observer['xchan_url'], $Text);
|
||||
$Text = str_replace('[observer.name]',$s1 . $observer['xchan_name'] . $s2, $Text);
|
||||
$Text = str_replace('[observer.address]',$s1 . $observer['xchan_addr'] . $s2, $Text);
|
||||
$Text = str_replace('[observer.webname]', substr($observer['xchan_addr'],0,strpos($observer['xchan_addr'],'@')), $Text);
|
||||
$Text = str_replace('[observer.photo]',$s1 . '[zmg]'.$observer['xchan_photo_l'].'[/zmg]' . $s2, $Text);
|
||||
} else {
|
||||
$Text = str_replace('[observer.baseurl]', '', $Text);
|
||||
$Text = str_replace('[observer.url]','', $Text);
|
||||
$Text = str_replace('[observer.name]','', $Text);
|
||||
$Text = str_replace('[observer.address]','', $Text);
|
||||
$Text = str_replace('[observer.webname]','',$Text);
|
||||
$Text = str_replace('[observer.photo]','', $Text);
|
||||
}
|
||||
return $Text;
|
||||
}
|
||||
|
||||
// BBcode 2 HTML was written by WAY2WEB.net
|
||||
// extended to work with Mistpark/Friendica/Redmatrix/Hubzilla - Mike Macgirvin
|
||||
|
||||
@@ -68,7 +68,7 @@ function get_help_content($tocpath = false) {
|
||||
}
|
||||
|
||||
if($doctype === 'html')
|
||||
$content = $text;
|
||||
$content = parseIdentityAwareHTML($text);
|
||||
if($doctype === 'markdown') {
|
||||
require_once('library/markdown.php');
|
||||
# escape #include tags
|
||||
|
||||
Reference in New Issue
Block a user