]> source.dussan.org Git - redmine.git/commitdiff
Fixed: TOC does not remove colorization markups (#1423).
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 15 Jun 2008 11:00:40 +0000 (11:00 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 15 Jun 2008 11:00:40 +0000 (11:00 +0000)
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1542 e93f8b46-1217-0410-a6f0-8f06a7374b81

lib/redmine/wiki_formatting.rb
test/unit/helpers/application_helper_test.rb

index 7197af2c33c47bd09e116bf27a47decdbb5d99ab..88a858b0458d1ed96f1e3810cbdb22b4e27d3e88 100644 (file)
@@ -85,6 +85,9 @@ module Redmine
           @toc.each_with_index do |heading, index|
             # remove wiki links from the item
             toc_item = heading.last.gsub(/(\[\[|\]\])/, '')
+            # remove styles
+            # eg. %{color:red}Triggers% => Triggers
+            toc_item.gsub! %r[%\{[^\}]*\}([^%]+)%], '\\1'
             out << "<a href=\"##{index+1}\" class=\"heading#{heading.first}\">#{toc_item}</a>"
           end
           out << '</div>'
index 1e75dbd6489b541ceef9bad9d549aa554f23e9c9..7fa96d7e276b1c2bde26748d27754f1ae0384947 100644 (file)
@@ -183,6 +183,34 @@ class ApplicationHelperTest < HelperTestCase
     assert_equal '<p>Dashes: ---</p>', textilizable('Dashes: ---')
   end
   
+  def test_table_of_content
+    raw = <<-RAW
+{{toc}}
+
+h1. Title
+
+Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas sed libero.
+
+h2. Subtitle
+
+Nullam commodo metus accumsan nulla. Curabitur lobortis dui id dolor.
+
+h2. Subtitle with %{color:red}red text%
+
+h1. Another title
+
+RAW
+
+    expected = '<div class="toc">' +
+               '<a href="#1" class="heading1">Title</a>' +
+               '<a href="#2" class="heading2">Subtitle</a>' + 
+               '<a href="#3" class="heading2">Subtitle with red text</a>' +
+               '<a href="#4" class="heading1">Another title</a>' +
+               '</div>'
+               
+    assert textilizable(raw).include?(expected)
+  end
+  
   def test_blockquote
     # orig raw text
     raw = <<-RAW