Fix TOC links href, no TOC in home

This commit is contained in:
fabrixxm 2015-12-28 10:21:34 +01:00
parent 1776b19dbf
commit f579b2af55
2 changed files with 27 additions and 23 deletions

View File

@ -269,6 +269,7 @@ xml
</photo> </photo>
``` ```
---
### friendica/photos/list ### friendica/photos/list
Returns a list of all photo resources of the logged in user. Returns a list of all photo resources of the logged in user.

View File

@ -59,33 +59,36 @@ function help_content(&$a) {
$html = Markdown($text); $html = Markdown($text);
// create TOC if ($filename !== "Home") {
$lines = explode("\n", $html); // create TOC but not for home
$toc="<style>aside ul {padding-left: 1em;}</style><h2>TOC</h2><ul id='toc'>"; $lines = explode("\n", $html);
$lastlevel=1; $toc="<style>aside ul {padding-left: 1em;}</style><h2>TOC</h2><ul id='toc'>";
$idnum = array(0,0,0,0,0,0,0); $lastlevel=1;
foreach($lines as &$line){ $idnum = array(0,0,0,0,0,0,0);
if (substr($line,0,2)=="<h") { foreach($lines as &$line){
$level = substr($line,2,1); if (substr($line,0,2)=="<h") {
if ($level!="r") { $level = substr($line,2,1);
$level = intval($level); if ($level!="r") {
if ($level<$lastlevel) { $level = intval($level);
for($k=$level;$k<$lastlevel; $k++) $toc.="</ul>"; if ($level<$lastlevel) {
for($k=$level+1;$k<count($idnum);$k++) $idnum[$k]=0; for($k=$level;$k<$lastlevel; $k++) $toc.="</ul>";
for($k=$level+1;$k<count($idnum);$k++) $idnum[$k]=0;
}
if ($level>$lastlevel) $toc.="<ul>";
$idnum[$level]++;
$id = implode("_", array_slice($idnum,1,$level));
$href = $a->get_baseurl()."/help/{$filename}#{$id}";
$toc .= "<li><a href='{$href}'>".strip_tags($line)."</a></li>";
$line = "<a name='{$id}'></a>".$line;
$lastlevel = $level;
} }
if ($level>$lastlevel) $toc.="<ul>";
$idnum[$level]++;
$id = implode("_", array_slice($idnum,1,$level));
$toc .= "<li><a href='#{$id}'>".strip_tags($line)."</a></li>";
$line = "<a name='{$id}'></a>".$line;
$lastlevel = $level;
} }
} }
} for($k=1;$k<$lastlevel; $k++) $toc.="</ul>";
for($k=1;$k<$lastlevel; $k++) $toc.="</ul>"; $html = implode("\n",$lines);
$html = implode("\n",$lines);
$a->page['aside'] = $toc.$a->page['aside']; $a->page['aside'] = $toc.$a->page['aside'];
}
$html = " $html = "
<style> <style>