diff --git a/docs/changelog/7.x.x.txt b/docs/changelog/7.x.x.txt index c96720440..665e6ef27 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -1,4 +1,6 @@ 7.5.20 + - fixed: The indent loop of the Navigation wobject has an incorrect number of + iterations in some cases. (Martin Kamerbeek / Oqapi) 7.5.19 - fixed: paginator doesn't show correct number of page links with a limit applied diff --git a/lib/WebGUI/Asset/Wobject/Navigation.pm b/lib/WebGUI/Asset/Wobject/Navigation.pm index d44474c80..e4b82c79d 100644 --- a/lib/WebGUI/Asset/Wobject/Navigation.pm +++ b/lib/WebGUI/Asset/Wobject/Navigation.pm @@ -401,6 +401,7 @@ sub view { my $currentLineage = $current->get("lineage"); my $lineageToSkip = "noskip"; my $absoluteDepthOfLastPage; + my $absoluteDepthOfFirstPage = $assets->[0]->getLineageLength; my %lastChildren; my $previousPageData = undef; my $eh = $self->session->errorHandler; @@ -437,7 +438,7 @@ sub view { $pageData->{'page.isContainer'} = isIn($asset->get('className'), @{$self->session->config->get("assetContainers") || []}); $pageData->{'page.isUtility'} = isIn($asset->get('className'), @{$self->session->config->get("utilityAssets") || []}); $pageData->{"page.url"} = $asset->getUrl; - my $indent = $pageData->{"page.relDepth"}; + my $indent = $asset->getLineageLength - $absoluteDepthOfFirstPage; $pageData->{"page.indent_loop"} = []; push(@{$pageData->{"page.indent_loop"}},{'indent'=>$_}) for(1..$indent); $pageData->{"page.indent"} = "   " x $indent;