Added TOC (Table of contents) for wiki pages.
This commit is contained in:
parent
255a4cd6c7
commit
eddf20b063
6 changed files with 53 additions and 3 deletions
|
|
@ -1,7 +1,8 @@
|
|||
module PagesHelper
|
||||
|
||||
def wikified_body(body)
|
||||
r = RedCloth.new(generate_anchors(body))
|
||||
body = wiki_header(body)
|
||||
r = RedCloth.new(body)
|
||||
r.gsub!(/\[\[(.*?)(\|(.*?))?\]\]/) { wiki_link($1, $3) }
|
||||
sanitize r.to_html
|
||||
r.to_html
|
||||
|
|
@ -16,6 +17,10 @@ module PagesHelper
|
|||
end
|
||||
end
|
||||
|
||||
def wiki_header(body)
|
||||
body.gsub(/^(={2,6})\s+(.*)\s+={2,6}$/) { "h#{$1.size}. #{$2}" }
|
||||
end
|
||||
|
||||
def generate_toc(body)
|
||||
toc = ""
|
||||
body.gsub(/^\s*h([1-6])\.\s+(.*)/) do
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue