Render TOC for legislation draft versions

This commit is contained in:
Amaia Castro
2016-12-14 18:51:01 +01:00
parent 766f509f8e
commit 86009bfcac
2 changed files with 22 additions and 3 deletions

View File

@@ -11,6 +11,12 @@ class Legislation::DraftVersion < ActiveRecord::Base
validates :status, presence: true, inclusion: { in: VALID_STATUSES }
def body_in_html
body_html || Redcarpet::Markdown.new(Redcarpet::Render::HTML.new).render(body)
renderer = Redcarpet::Render::HTML.new(with_toc_data: true)
toc_renderer = Redcarpet::Render::HTML_TOC.new(with_toc_data: true)
body_html = Redcarpet::Markdown.new(renderer).render(body)
toc = Redcarpet::Markdown.new(toc_renderer).render(body)
return toc, body_html
end
end

View File

@@ -6,7 +6,20 @@
<%= link_to t('.see_changes'), legislation_process_draft_version_changes_path(@process, @draft_version) %>
</div>
<div>
<%= @draft_version.body_in_html.html_safe %>
<% toc, body = @draft_version.body_in_html %>
<div class="small-12 medium-3 column">
<%= toc.html_safe %>
</div>
<div class="small-12 medium-9 column">
<section data-annotatable-type="legislation_draft_version"
data-annotatable-id="<%= @draft_version.id %>">
<div id="legislation_draft_version_body">
<%= body.html_safe %>
</div>
</section>
</div>
</div>