From 02732ee4530b500025c6b96f415ad5d60a740d9c Mon Sep 17 00:00:00 2001 From: Antoine Musso Date: Tue, 25 Apr 2006 19:43:46 +0000 Subject: [PATCH] Fix #4834: correct XHTML output when using $wgMaxTocLevel --- RELEASE-NOTES | 1 + includes/Parser.php | 17 ++++++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) 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 ); } -- 2.20.1