X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fbabel.php;h=3352366bd5a78279c3e21d2b069c48c89e796c61;hb=3e797547a37f8c8f22e88965b4a4d278bcc192e0;hp=e8ea11c94e904305d6d89985c5ab730e6cfcabb6;hpb=5eaa5951a1b19b985017b5db20f3b1abf464a1ef;p=friendica.git diff --git a/mod/babel.php b/mod/babel.php index e8ea11c94e..3352366bd5 100644 --- a/mod/babel.php +++ b/mod/babel.php @@ -1,79 +1,122 @@ ', $s); +function visible_lf($s) +{ + return str_replace("\n", '
', $s); } -function babel_content(App $a) { - - $o .= '

Babel Diagnostic

'; - - $o .= '
'; - $o .= t('Source (bbcode) text:') . EOL . '' . EOL; - $o .= '
'; - - $o .= '

'; - - $o .= '
'; - $o .= t('Source (Diaspora) text to convert to BBcode:') . EOL . '' . EOL; - $o .= '
'; - - $o .= '

'; - - if(x($_REQUEST,'text')) { - - $text = trim($_REQUEST['text']); - $o .= "

" . t("Source input: ") . "

" . EOL. EOL; - $o .= visible_lf($text) . EOL. EOL; - - $html = bbcode($text); - $o .= "

" . t("bb2html (raw HTML): ") . "

" . EOL. EOL; - $o .= htmlspecialchars($html). EOL. EOL; - - //$html = bbcode($text); - $o .= "

" . t("bb2html: ") . "

" . EOL. EOL; - $o .= $html. EOL. EOL; - - $bbcode = html2bbcode($html); - $o .= "

" . t("bb2html2bb: ") . "

" . EOL. EOL; - $o .= visible_lf($bbcode) . EOL. EOL; - - $diaspora = bb2diaspora($text); - $o .= "

" . t("bb2md: ") . "

" . EOL. EOL; - $o .= visible_lf($diaspora) . EOL. EOL; - - $html = Markdown($diaspora); - $o .= "

" . t("bb2md2html: ") . "

" . EOL. EOL; - $o .= $html. EOL. EOL; - - $bbcode = diaspora2bb($diaspora); - $o .= "

" . t("bb2dia2bb: ") . "

" . EOL. EOL; - $o .= visible_lf($bbcode) . EOL. EOL; - - $bbcode = html2bbcode($html); - $o .= "

" . t("bb2md2html2bb: ") . "

" . EOL. EOL; - $o .= visible_lf($bbcode) . EOL. EOL; - - - +function babel_content() +{ + $results = []; + if (!empty($_REQUEST['text'])) { + switch (defaults($_REQUEST, 'type', 'bbcode')) { + case 'bbcode': + $bbcode = trim($_REQUEST['text']); + $results[] = [ + 'title' => L10n::t('Source input'), + 'content' => visible_lf($bbcode) + ]; + + $plain = Text\BBCode::toPlaintext($bbcode, false); + $results[] = [ + 'title' => L10n::t('BBCode::toPlaintext'), + 'content' => visible_lf($plain) + ]; + + $html = Text\BBCode::convert($bbcode); + $results[] = [ + 'title' => L10n::t("BBCode::convert \x28raw HTML\x29"), + 'content' => htmlspecialchars($html) + ]; + + $results[] = [ + 'title' => L10n::t('BBCode::convert'), + 'content' => $html + ]; + + $bbcode2 = Text\HTML::toBBCode($html); + $results[] = [ + 'title' => L10n::t('BBCode::convert => HTML::toBBCode'), + 'content' => visible_lf($bbcode2) + ]; + + $markdown = Text\BBCode::toMarkdown($bbcode); + $results[] = [ + 'title' => L10n::t('BBCode::toMarkdown'), + 'content' => visible_lf($markdown) + ]; + + $html2 = Text\Markdown::convert($markdown); + $results[] = [ + 'title' => L10n::t('BBCode::toMarkdown => Markdown::convert'), + 'content' => $html2 + ]; + + $bbcode3 = Text\Markdown::toBBCode($markdown); + $results[] = [ + 'title' => L10n::t('BBCode::toMarkdown => Markdown::toBBCode'), + 'content' => visible_lf($bbcode3) + ]; + + $bbcode4 = Text\HTML::toBBCode($html2); + $results[] = [ + 'title' => L10n::t('BBCode::toMarkdown => Markdown::convert => HTML::toBBCode'), + 'content' => visible_lf($bbcode4) + ]; + break; + case 'markdown': + $markdown = trim($_REQUEST['text']); + $results[] = [ + 'title' => L10n::t('Source input \x28Diaspora format\x29'), + 'content' => '
' . $markdown . '
' + ]; + + $bbcode = Text\Markdown::toBBCode($markdown); + $results[] = [ + 'title' => L10n::t('Markdown::toBBCode'), + 'content' => '
' . $bbcode . '
' + ]; + break; + case 'html' : + $html = trim($_REQUEST['text']); + $results[] = [ + 'title' => L10n::t("Raw HTML input"), + 'content' => htmlspecialchars($html) + ]; + + $results[] = [ + 'title' => L10n::t('HTML Input'), + 'content' => $html + ]; + + $bbcode = Text\HTML::toBBCode($html); + $results[] = [ + 'title' => L10n::t('HTML::toBBCode'), + 'content' => visible_lf($bbcode) + ]; + + $text = Text\HTML::toPlaintext($html); + $results[] = [ + 'title' => L10n::t('HTML::toPlaintext'), + 'content' => '
' . $text . '
' + ]; + } } - if(x($_REQUEST,'d2bbtext')) { - - $d2bbtext = trim($_REQUEST['d2bbtext']); - $o .= "

" . t("Source input (Diaspora format): ") . "

" . EOL. EOL; - $o .= visible_lf($d2bbtext) . EOL. EOL; - - - $bb = diaspora2bb($d2bbtext); - $o .= "

" . t("diaspora2bb: ") . "

" . EOL. EOL; - $o .= visible_lf($bb) . EOL. EOL; - } + $tpl = get_markup_template('babel.tpl'); + $o = replace_macros($tpl, [ + '$text' => ['text', L10n::t('Source text'), defaults($_REQUEST, 'text', ''), ''], + '$type_bbcode' => ['type', L10n::t('BBCode'), 'bbcode', '', defaults($_REQUEST, 'type', 'bbcode') == 'bbcode'], + '$type_markdown' => ['type', L10n::t('Markdown'), 'markdown', '', defaults($_REQUEST, 'type', 'bbcode') == 'markdown'], + '$type_html' => ['type', L10n::t('HTML'), 'html', '', defaults($_REQUEST, 'type', 'bbcode') == 'html'], + '$results' => $results + ]); return $o; }