Refactor bbcode() into BBCode::convert()

This commit is contained in:
Hypolite Petovan 2018-02-14 21:43:40 -05:00
parent f4e38b6ee9
commit 91fd77af3b
12 changed files with 37 additions and 23 deletions

View file

@ -5,6 +5,8 @@
* Version: 1.0 * Version: 1.0
* *
*/ */
use Friendica\Content\Text\BBCode;
use Friendica\Core\Addon; use Friendica\Core\Addon;
use Friendica\Core\L10n; use Friendica\Core\L10n;
use Friendica\Core\PConfig; use Friendica\Core\PConfig;
@ -184,7 +186,7 @@ function blogger_send(&$a, &$b)
require_once('include/bbcode.php'); require_once('include/bbcode.php');
$title = '<title>' . (($b['title']) ? $b['title'] : L10n::t('Post from Friendica')) . '</title>'; $title = '<title>' . (($b['title']) ? $b['title'] : L10n::t('Post from Friendica')) . '</title>';
$post = $title . bbcode($b['body']); $post = $title . BBCode::convert($b['body']);
$post = xmlify($post); $post = xmlify($post);
$xml = <<< EOT $xml = <<< EOT

View file

@ -8,6 +8,7 @@
* Author: Cat Gray <https://free-haven.org/profile/catness> * Author: Cat Gray <https://free-haven.org/profile/catness>
*/ */
use Friendica\Content\Text\BBCode;
use Friendica\Core\Addon; use Friendica\Core\Addon;
use Friendica\Core\L10n; use Friendica\Core\L10n;
use Friendica\Core\PConfig; use Friendica\Core\PConfig;
@ -182,7 +183,7 @@ function dwpost_send(&$a,&$b) {
require_once('include/bbcode.php'); require_once('include/bbcode.php');
$title = $b['title']; $title = $b['title'];
$post = bbcode($b['body']); $post = BBCode::convert($b['body']);
$post = xmlify($post); $post = xmlify($post);
$tags = dwpost_get_tags($b['tag']); $tags = dwpost_get_tags($b['tag']);

View file

@ -8,6 +8,7 @@
* Author: Cat Gray <https://free-haven.org/profile/catness> * Author: Cat Gray <https://free-haven.org/profile/catness>
*/ */
use Friendica\Content\Text\BBCode;
use Friendica\Core\Addon; use Friendica\Core\Addon;
use Friendica\Core\L10n; use Friendica\Core\L10n;
use Friendica\Core\PConfig; use Friendica\Core\PConfig;
@ -182,7 +183,7 @@ function ijpost_send(&$a,&$b) {
require_once('include/datetime.php'); require_once('include/datetime.php');
$title = $b['title']; $title = $b['title'];
$post = bbcode($b['body']); $post = BBCode::convert($b['body']);
$post = xmlify($post); $post = xmlify($post);
$tags = ijpost_get_tags($b['tag']); $tags = ijpost_get_tags($b['tag']);

View file

@ -10,6 +10,7 @@
require_once 'include/bbcode.php'; require_once 'include/bbcode.php';
require_once 'mod/proxy.php'; require_once 'mod/proxy.php';
use Friendica\Content\Text\BBCode;
use Friendica\Core\Addon; use Friendica\Core\Addon;
use Friendica\Core\Config; use Friendica\Core\Config;
use Friendica\Core\L10n; use Friendica\Core\L10n;
@ -39,7 +40,7 @@ function obfuscate_email ($s) {
return $s; return $s;
} }
function impressum_footer($a, &$b) { function impressum_footer($a, &$b) {
$text = proxy_parse_html(bbcode(Config::get('impressum','footer_text'), true)); $text = proxy_parse_html(BBCode::convert(Config::get('impressum','footer_text')));
if (! $text == '') { if (! $text == '') {
$a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="'.$a->get_baseurl().'/addon/impressum/impressum.css" media="all" />'; $a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="'.$a->get_baseurl().'/addon/impressum/impressum.css" media="all" />';
$b .= '<div class="clear"></div>'; $b .= '<div class="clear"></div>';
@ -50,8 +51,8 @@ function impressum_show($a,&$b) {
$b .= '<h3>'.L10n::t('Impressum').'</h3>'; $b .= '<h3>'.L10n::t('Impressum').'</h3>';
$owner = Config::get('impressum', 'owner'); $owner = Config::get('impressum', 'owner');
$owner_profile = Config::get('impressum','ownerprofile'); $owner_profile = Config::get('impressum','ownerprofile');
$postal = proxy_parse_html(bbcode(Config::get('impressum', 'postal'), true)); $postal = proxy_parse_html(BBCode::convert(Config::get('impressum', 'postal')));
$notes = proxy_parse_html(bbcode(Config::get('impressum', 'notes'), true)); $notes = proxy_parse_html(BBCode::convert(Config::get('impressum', 'notes')));
$email = obfuscate_email( Config::get('impressum','email') ); $email = obfuscate_email( Config::get('impressum','email') );
if (strlen($owner)) { if (strlen($owner)) {
if (strlen($owner_profile)) { if (strlen($owner_profile)) {

View file

@ -8,6 +8,7 @@
* Author: Cat Gray <https://free-haven.org/profile/catness> * Author: Cat Gray <https://free-haven.org/profile/catness>
*/ */
use Friendica\Content\Text\BBCode;
use Friendica\Core\Addon; use Friendica\Core\Addon;
use Friendica\Core\L10n; use Friendica\Core\L10n;
use Friendica\Core\PConfig; use Friendica\Core\PConfig;
@ -182,7 +183,7 @@ function ljpost_send(&$a,&$b) {
require_once('include/bbcode.php'); require_once('include/bbcode.php');
$title = xmlify($b['title']); $title = xmlify($b['title']);
$post = bbcode($b['body']); $post = BBCode::convert($b['body']);
$post = xmlify($post); $post = xmlify($post);
$tags = ljpost_get_tags($b['tag']); $tags = ljpost_get_tags($b['tag']);

View file

@ -5,6 +5,8 @@
* Version: 1.1 * Version: 1.1
* Author: Matthew Exon <http://mat.exon.name> * Author: Matthew Exon <http://mat.exon.name>
*/ */
use Friendica\Content\Text\BBCode;
use Friendica\Core\Addon; use Friendica\Core\Addon;
use Friendica\Core\Config; use Friendica\Core\Config;
use Friendica\Core\L10n; use Friendica\Core\L10n;
@ -180,7 +182,7 @@ function mailstream_sender($item) {
} }
function mailstream_decode_subject($subject) { function mailstream_decode_subject($subject) {
$html = bbcode($subject); $html = BBCode::convert($subject);
if (!$html) { if (!$html) {
return $subject; return $subject;
} }
@ -285,7 +287,7 @@ function mailstream_send($a, $message_id, $item, $user) {
$mail->IsHTML(true); $mail->IsHTML(true);
$mail->CharSet = 'utf-8'; $mail->CharSet = 'utf-8';
$template = get_markup_template('mail.tpl', 'addon/mailstream/'); $template = get_markup_template('mail.tpl', 'addon/mailstream/');
$item['body'] = bbcode($item['body']); $item['body'] = BBCode::convert($item['body']);
$item['url'] = $a->get_baseurl() . '/display/' . $user['nickname'] . '/' . $item['id']; $item['url'] = $a->get_baseurl() . '/display/' . $user['nickname'] . '/' . $item['id'];
$mail->Body = replace_macros($template, [ $mail->Body = replace_macros($template, [
'$upstream' => L10n::t('Upstream'), '$upstream' => L10n::t('Upstream'),

View file

@ -8,6 +8,7 @@
require_once 'include/bbcode.php'; require_once 'include/bbcode.php';
use Friendica\Content\Text\BBCode;
use Friendica\Core\Addon; use Friendica\Core\Addon;
use Friendica\Core\Config; use Friendica\Core\Config;
use Friendica\Core\L10n; use Friendica\Core\L10n;
@ -31,7 +32,7 @@ function newmemberwidget_network_mod_init ( $a, $b) {
$t .= '<a href="'.$a->get_baseurl().'/profile/'.Config::get('newmemberwidget','localsupport').'" target="_new">'.L10n::t('Local Support Forum').'</a><br />'.EOL; $t .= '<a href="'.$a->get_baseurl().'/profile/'.Config::get('newmemberwidget','localsupport').'" target="_new">'.L10n::t('Local Support Forum').'</a><br />'.EOL;
$ft = Config::get('newmemberwidget','freetext'); $ft = Config::get('newmemberwidget','freetext');
if (!trim($ft)=="") if (!trim($ft)=="")
$t .= '<p>'.bbcode(trim($ft)).'</p>'; $t .= '<p>'.BBCode::convert(trim($ft)).'</p>';
$t .= '</div><div class="clear"></div>'; $t .= '</div><div class="clear"></div>';
$a->page['aside'] = $t . $a->page['aside']; $a->page['aside'] = $t . $a->page['aside'];
} }

View file

@ -7,6 +7,8 @@
* Author: Mike Macgirvin (Inital Author of the hubbwall Addon for the Hubzilla Project) * Author: Mike Macgirvin (Inital Author of the hubbwall Addon for the Hubzilla Project)
* Author: Rabuzarus <https://friendica.kommune4.de/profile/rabuzarus> (Port to Friendica) * Author: Rabuzarus <https://friendica.kommune4.de/profile/rabuzarus> (Port to Friendica)
*/ */
use Friendica\Content\Text\BBCode;
use Friendica\Core\L10n; use Friendica\Core\L10n;
use Friendica\Util\Emailer; use Friendica\Util\Emailer;
@ -49,9 +51,9 @@ function notifyall_post(&$a) {
$subject = $_REQUEST['subject']; $subject = $_REQUEST['subject'];
$textversion = strip_tags(html_entity_decode(bbcode(stripslashes(str_replace(["\\r", "\\n"],[ "", "\n"], $text))),ENT_QUOTES,'UTF-8')); $textversion = strip_tags(html_entity_decode(BBCode::convert(stripslashes(str_replace(["\\r", "\\n"], ["", "\n"], $text))), ENT_QUOTES, 'UTF-8'));
$htmlversion = bbcode(stripslashes(str_replace(["\\r","\\n"], ["","<br />\n"],$text))); $htmlversion = BBCode::convert(stripslashes(str_replace(["\\r", "\\n"], ["", "<br />\n"], $text)));
// if this is a test, send it only to the admin(s) // if this is a test, send it only to the admin(s)
// admin_email might be a comma separated list, but we need "a@b','c@d','e@f // admin_email might be a comma separated list, but we need "a@b','c@d','e@f

View file

@ -6,6 +6,7 @@
* Author: Michael Vogel <http://pirati.ca/profile/heluecht> * Author: Michael Vogel <http://pirati.ca/profile/heluecht>
*/ */
use Friendica\Content\Text\BBCode;
use Friendica\Core\Addon; use Friendica\Core\Addon;
use Friendica\Core\Config; use Friendica\Core\Config;
use Friendica\Core\L10n; use Friendica\Core\L10n;
@ -475,7 +476,7 @@ function pumpio_send(&$a,&$b) {
$title = trim($b['title']); $title = trim($b['title']);
$content = bbcode($b['body'], false, false, 4); $content = BBCode::convert($b['body'], false, 4);
$params = []; $params = [];

View file

@ -381,7 +381,7 @@ function tumblr_send(&$a,&$b) {
switch ($siteinfo["type"]) { switch ($siteinfo["type"]) {
case "photo": case "photo":
$params['type'] = "photo"; $params['type'] = "photo";
$params['caption'] = bbcode($body, false, false, 4); $params['caption'] = BBCode::convert($body, false, 4);
if (isset($siteinfo["url"])) if (isset($siteinfo["url"]))
$params['link'] = $siteinfo["url"]; $params['link'] = $siteinfo["url"];
@ -392,22 +392,22 @@ function tumblr_send(&$a,&$b) {
$params['type'] = "link"; $params['type'] = "link";
$params['title'] = $title; $params['title'] = $title;
$params['url'] = $siteinfo["url"]; $params['url'] = $siteinfo["url"];
$params['description'] = bbcode($body, false, false, 4); $params['description'] = BBCode::convert($body, false, 4);
break; break;
case "audio": case "audio":
$params['type'] = "audio"; $params['type'] = "audio";
$params['external_url'] = $siteinfo["url"]; $params['external_url'] = $siteinfo["url"];
$params['caption'] = bbcode($body, false, false, 4); $params['caption'] = BBCode::convert($body, false, 4);
break; break;
case "video": case "video":
$params['type'] = "video"; $params['type'] = "video";
$params['embed'] = $siteinfo["url"]; $params['embed'] = $siteinfo["url"];
$params['caption'] = bbcode($body, false, false, 4); $params['caption'] = BBCode::convert($body, false, 4);
break; break;
default: default:
$params['type'] = "text"; $params['type'] = "text";
$params['title'] = $title; $params['title'] = $title;
$params['body'] = bbcode($b['body'], false, false, 4); $params['body'] = BBCode::convert($b['body'], false, 4);
break; break;
} }
@ -416,7 +416,7 @@ function tumblr_send(&$a,&$b) {
"<p>".$params['caption']."</p>"; "<p>".$params['caption']."</p>";
if (trim($params['caption']) == "") if (trim($params['caption']) == "")
$params['caption'] = bbcode("[quote]".$siteinfo["description"]."[/quote]", false, false, 4); $params['caption'] = BBCode::convert("[quote]" . $siteinfo["description"] . "[/quote]", false, 4);
$consumer_key = Config::get('tumblr','consumer_key'); $consumer_key = Config::get('tumblr','consumer_key');
$consumer_secret = Config::get('tumblr','consumer_secret'); $consumer_secret = Config::get('tumblr','consumer_secret');

View file

@ -25,7 +25,9 @@
* sets the counter back * sets the counter back
* count only unseen elements which are not type=activity (likes and dislikes not seen as new elements) * count only unseen elements which are not type=activity (likes and dislikes not seen as new elements)
*/ */
use Friendica\App; use Friendica\App;
use Friendica\Content\Text\BBCode;
use Friendica\Core\Addon; use Friendica\Core\Addon;
use Friendica\Core\L10n; use Friendica\Core\L10n;
use Friendica\Core\PConfig; use Friendica\Core\PConfig;
@ -211,7 +213,7 @@ function windowsphonepush_cron()
} else { } else {
require_once('include/bbcode.php'); require_once('include/bbcode.php');
require_once("include/html2plain.php"); require_once("include/html2plain.php");
$body = bbcode($body, false, false, 2, true); $body = BBCode::convert($body, false, 2, true);
$body = html2plain($body, 0); $body = html2plain($body, 0);
$body = ((strlen($body) > 137) ? substr($body, 0, 137) . "..." : $body); $body = ((strlen($body) > 137) ? substr($body, 0, 137) . "..." : $body);
} }

View file

@ -145,7 +145,7 @@ function wppost_settings_post(&$a,&$b) {
PConfig::set(local_user(),'wppost','backlink',trim($_POST['wp_backlink'])); PConfig::set(local_user(),'wppost','backlink',trim($_POST['wp_backlink']));
PConfig::set(local_user(),'wppost','shortcheck',trim($_POST['wp_shortcheck'])); PConfig::set(local_user(),'wppost','shortcheck',trim($_POST['wp_shortcheck']));
$wp_backlink_text = notags(trim($_POST['wp_backlink_text'])); $wp_backlink_text = notags(trim($_POST['wp_backlink_text']));
$wp_backlink_text = bbcode($wp_backlink_text, false, false, 8); $wp_backlink_text = BBCode::convert($wp_backlink_text, false, 8);
$wp_backlink_text = html2plain($wp_backlink_text, 0, true); $wp_backlink_text = html2plain($wp_backlink_text, 0, true);
PConfig::set(local_user(),'wppost','wp_backlink_text', $wp_backlink_text); PConfig::set(local_user(),'wppost','wp_backlink_text', $wp_backlink_text);
@ -266,7 +266,7 @@ function wppost_send(&$a,&$b) {
// Remove the share element before fetching the first line // Remove the share element before fetching the first line
$title = trim(preg_replace("/\[share.*?\](.*?)\[\/share\]/ism","\n$1\n",$b['body'])); $title = trim(preg_replace("/\[share.*?\](.*?)\[\/share\]/ism","\n$1\n",$b['body']));
$title = html2plain(bbcode($title, false, false), 0, true)."\n"; $title = html2plain(BBCode::convert($title, false), 0, true)."\n";
$pos = strpos($title, "\n"); $pos = strpos($title, "\n");
$trailer = ""; $trailer = "";
if (($pos == 0) || ($pos > 100)) { if (($pos == 0) || ($pos > 100)) {
@ -279,7 +279,7 @@ function wppost_send(&$a,&$b) {
} }
$title = '<title>' . (($wptitle) ? $wptitle : L10n::t('Post from Friendica')) . '</title>'; $title = '<title>' . (($wptitle) ? $wptitle : L10n::t('Post from Friendica')) . '</title>';
$post = bbcode($b['body'], false, false, 4); $post = BBCode::convert($b['body'], false, 4);
// If a link goes to youtube then remove the stuff around it. Wordpress detects youtube links and embeds it // If a link goes to youtube then remove the stuff around it. Wordpress detects youtube links and embeds it
$post = preg_replace('/<a.*?href="(https?:\/\/www.youtube.com\/.*?)".*?>(.*?)<\/a>/ism',"\n$1\n",$post); $post = preg_replace('/<a.*?href="(https?:\/\/www.youtube.com\/.*?)".*?>(.*?)<\/a>/ism',"\n$1\n",$post);