X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=mod%2Fhelp.php;h=981fe97f70759103fa16ab8c50dcbadb8f316d57;hb=7f04a2ab8b38cd7208dc4e9d507aef54cb400f24;hp=44edbf931861133e0b7a9a853ca4473f9b280ccb;hpb=e67062d9cfba398a237f261cc6104e76cc91359b;p=friendica.git diff --git a/mod/help.php b/mod/help.php index 44edbf9318..981fe97f70 100644 --- a/mod/help.php +++ b/mod/help.php @@ -1,52 +1,12 @@ block_gamut += array( - "doBlockWarning" => 45, - ); - parent::MarkdownExtra_Parser(); - } - - function doBlockWarning($text) { - $text = preg_replace_callback('/ - ( # Wrap whole match in $1 - (?> - ^[ ]*![ ]? # "!" at the start of a line - .+\n # rest of the first line - (.+\n)* # subsequent consecutive lines - \n* # blanks - )+ - ) - /xm', array(&$this, '_doBlockWarning_callback'), $text); - - return $text; - } - - function _doBlockWarning_callback($matches) { - $bq = $matches[1]; - # trim one level of quoting - trim whitespace-only lines - $bq = preg_replace('/^[ ]*![ ]?|^[ ]+$/m', '', $bq); - $bq = $this->runBlockGamut($bq); # recurse - - $bq = preg_replace('/^/m', " ", $bq); - # These leading spaces cause problem with
 content, 
-		# so we need to fix that:
-//		$bq = preg_replace_callback('{(\s*
.+?
)}sx', array(&$this, '__doBlockWarning_callback2'), $bq); - - return "\n" . $this->hashBlock("
\n$bq\n
") . "\n\n"; - } - - function _doBlockWarning_callback2($matches) { - $pre = $matches[1]; - $pre = preg_replace('/^ /m', '', $pre); - return $pre; - } - -} +/** + * @file mod/help.php + */ +use Friendica\App; +use Friendica\Content\Nav; +use Friendica\Content\Text\Markdown; +use Friendica\Core\L10n; +use Friendica\Core\System; if (!function_exists('load_doc_file')) { @@ -65,37 +25,78 @@ if (!function_exists('load_doc_file')) { } -function help_content(&$a) { - - - nav_set_selected('help'); +function help_content(App $a) { + + Nav::setSelected('help'); global $lang; $text = ''; if ($a->argc > 1) { - $text = load_doc_file('doc/' . $a->argv[1] . '.md'); - $a->page['title'] = t('Help:') . ' ' . str_replace('-', ' ', notags($a->argv[1])); + $path = ''; + // looping through the argv keys bigger than 0 to build + // a path relative to /help + for($x = 1; $x < argc(); $x ++) { + if(strlen($path)) + $path .= '/'; + $path .= argv($x); + } + $title = basename($path); + $filename = $path; + $text = load_doc_file('doc/' . $path . '.md'); + $a->page['title'] = L10n::t('Help:') . ' ' . str_replace('-', ' ', notags($title)); } $home = load_doc_file('doc/Home.md'); if (!$text) { $text = $home; - $a->page['title'] = t('Help'); + $filename = "Home"; + $a->page['title'] = L10n::t('Help'); } else { - $a->page['aside'] = Markdown($home); + $a->page['aside'] = Markdown::convert($home, false); } if (!strlen($text)) { - header($_SERVER["SERVER_PROTOCOL"] . ' 404 ' . t('Not Found')); + header($_SERVER["SERVER_PROTOCOL"] . ' 404 ' . L10n::t('Not Found')); $tpl = get_markup_template("404.tpl"); - return replace_macros($tpl, array( - '$message' => t('Page not found.') - )); + return replace_macros($tpl, [ + '$message' => L10n::t('Page not found.') + ]); } - - $html = Markdown($text); - $html = "".$html; + + $html = Markdown::convert($text, false); + + if ($filename !== "Home") { + // create TOC but not for home + $lines = explode("\n", $html); + $toc="

TOC