From: Antoine Musso Date: Tue, 25 Apr 2006 19:43:46 +0000 (+0000) Subject: Fix #4834: correct XHTML output when using $wgMaxTocLevel X-Git-Tag: 1.31.0-rc.0~57369 X-Git-Url: https://git.cyclocoop.org/%28%28?a=commitdiff_plain;h=02732ee4530b500025c6b96f415ad5d60a740d9c;p=lhc%2Fweb%2Fwiklou.git Fix #4834: correct XHTML output when using $wgMaxTocLevel --- diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 045ebd233f..61d8697770 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -123,6 +123,7 @@ it from source control: http://www.mediawiki.org/wiki/Download_from_SVN * Indicate when a protected page is an interface message ("protectedinterface") * (bug 4259) Indicate when a protected page being edited is an interface message ("editinginterface") +* (bug 4834) Fix XHTML output when using $wgMaxTocLevel == Compatibility == diff --git a/includes/Parser.php b/includes/Parser.php index ac029d0373..facee90792 100644 --- a/includes/Parser.php +++ b/includes/Parser.php @@ -3106,7 +3106,9 @@ class Parser # Increase TOC level $toclevel++; $sublevelCount[$toclevel] = 0; - $toc .= $sk->tocIndent(); + if( $toclevel<$wgMaxTocLevel ) { + $toc .= $sk->tocIndent(); + } } elseif ( $level < $prevlevel && $toclevel > 1 ) { # Decrease TOC level, find level to jump to @@ -3128,12 +3130,15 @@ class Parser } } } - - $toc .= $sk->tocUnindent( $prevtoclevel - $toclevel ); + if( $toclevel<$wgMaxTocLevel ) { + $toc .= $sk->tocUnindent( $prevtoclevel - $toclevel ); + } } else { # No change in level, end TOC line - $toc .= $sk->tocLineEnd(); + if( $toclevel<$wgMaxTocLevel ) { + $toc .= $sk->tocLineEnd(); + } } $levelCount[$toclevel] = $level; @@ -3213,7 +3218,9 @@ class Parser } if( $doShowToc ) { - $toc .= $sk->tocUnindent( $toclevel - 1 ); + if( $toclevel<$wgMaxTocLevel ) { + $toc .= $sk->tocUnindent( $toclevel - 1 ); + } $toc = $sk->tocList( $toc ); }