]> git.mxchange.org Git - friendica.git/blobdiff - include/text.php
Resubmit all profiles on directory change
[friendica.git] / include / text.php
index 4a23b7ac37fa35b96e6c79c105ebc50399cc764b..2919989331f9e8775b467eda8d9487aeaef5fbec 100644 (file)
@@ -2125,47 +2125,48 @@ function format_network_name($network, $url = 0) {
  * @param string $lang Programming language
  * @return string Formated html
  */
-function text_highlight($s,$lang) {
-       if($lang === 'js')
+function text_highlight($s, $lang) {
+       if ($lang === 'js') {
                $lang = 'javascript';
-
-       if(! strpos('Text_Highlighter',get_include_path())) {
-               set_include_path(get_include_path() . PATH_SEPARATOR . 'library/Text_Highlighter');
        }
 
-       require_once('library/Text_Highlighter/Text/Highlighter.php');
-       require_once('library/Text_Highlighter/Text/Highlighter/Renderer/Html.php');
+       // @TODO: Replace Text_Highlighter_Renderer_Html by scrivo/highlight.php
+
+       // Autoload the library to make constants available
+       class_exists('Text_Highlighter_Renderer_Html');
+
        $options = array(
                'numbers' => HL_NUMBERS_LI,
                'tabsize' => 4,
-               );
+       );
 
        $tag_added = false;
-       $s = trim(html_entity_decode($s,ENT_COMPAT));
-       $s = str_replace("    ","\t",$s);
+       $s = trim(html_entity_decode($s, ENT_COMPAT));
+       $s = str_replace('    ', "\t", $s);
 
        // The highlighter library insists on an opening php tag for php code blocks. If
        // it isn't present, nothing is highlighted. So we're going to see if it's present.
        // If not, we'll add it, and then quietly remove it after we get the processed output back.
 
-       if($lang === 'php') {
-               if(strpos('<?php',$s) !== 0) {
+       if ($lang === 'php') {
+               if (strpos($s, '<?php') !== 0) {
                        $s = '<?php' . "\n" . $s;
                        $tag_added = true;
                }
        }
 
-       $renderer = new Text_Highlighter_Renderer_HTML($options);
+       $renderer = new Text_Highlighter_Renderer_Html($options);
        $hl = Text_Highlighter::factory($lang);
        $hl->setRenderer($renderer);
        $o = $hl->highlight($s);
-       $o = str_replace(["    ","\n"],["&nbsp;&nbsp;&nbsp;&nbsp;",''],$o);
+       $o = str_replace("\n", '', $o);
+
 
-       if($tag_added) {
-               $b = substr($o,0,strpos($o,'<li>'));
-               $e = substr($o,strpos($o,'</li>'));
+       if ($tag_added) {
+               $b = substr($o, 0, strpos($o, '<li>'));
+               $e = substr($o, strpos($o, '</li>'));
                $o = $b . $e;
        }
 
-       return('<code>' . $o . '</code>');
+       return '<code>' . $o . '</code>';
 }